本题要求编写函数实现带头结点的单链线性表的就地逆置操作函数。L是一个带头结点的单链表,函数ListReverse_L(LinkList &L)要求在不新开辟节点的前提下将单链表中的元素进行逆置,如原单链表元素依次为1,2,3,4,则逆置后为4,3,2,1。

函数接口定义:

void ListReverse_L(LinkList &L);

其中 L 是一个带头结点的单链表。

裁判测试程序样例:

//库函数头文件包含

#include

#include

#include

//函数状态码定义

#define TRUE 1

#define FALSE 0

#define OK 1

#define ERROR 0

#define INFEASIBLE -1

#define OVERFLOW -2

typedef int Status;

typedef int ElemType; //假设线性表中的元素均为整型

typedef struct LNode

{

ElemType data;

struct LNode *next;

}LNode,*LinkList;

Status ListCreate_L(LinkList &L,int n)

{

LNode *rearPtr,*curPtr; //一个尾指针,一个指向新节点的指针

L=(LNode*)malloc(sizeof (LNode));

if(!L)exit(OVERFLOW);

L->next=NULL; //先建立一个带头结点的单链表

rearPtr=L; //初始时头结点为尾节点,rearPtr指向尾巴节点

for (int i=1;i<=n;i++){ //每次循环都开辟一个新节点,并把新节点拼到尾节点后

curPtr=(LNode*)malloc(sizeof(LNode));//生成新结点

if(!curPtr)exit(OVERFLOW);

scanf("%d",&curPtr->data);//输入元素值

curPtr->next=NULL; //最后一个节点的next赋空

rearPtr->next=curPtr;

rearPtr=curPtr;

}

return OK;

}

void ListReverse_L(LinkList &L);

void ListPrint_L(LinkList &L){

//输出单链表

LNode *p=L->next; //p指向第一个元素结点

while(p!=NULL)

{

if(p->next!=NULL)

printf("%d ",p->data);

else

printf("%d",p->data);

p=p->next;

}

}

int main()

{

LinkList L;

int n;

scanf("%d",&n);

if(ListCreate_L(L,n)!= OK) {

printf("表创建失败!!!\n");

return -1;

}

ListReverse_L(L);

ListPrint_L(L);

return 0;

}

/* 请在这里填写答案 */

输入格式:

第一行输入一个整数n,表示单链表中元素个数,接下来一行共n个整数,中间用空格隔开。

输出格式:

输出逆置后顺序表的各个元素,两个元素之间用空格隔开,最后一个元素后面没有空格。

输入样例:

4

1 2 3 4

输出样例:

4 3 2 1

void ListReverse_L(LinkList &L)

{

LinkList p=L->next,q;

L->next=NULL;

while(p!=NULL){

q=p;

p=p->next;

q->next=L->next;

L->next=q;

}

}

python实现带头结点的单链表的就地逆置_带头结点的单链表就地逆置 (10 分)...相关推荐

  1. 各种风格简洁单页响应式html5模板_简洁 响应式 单页 跳转 设计 案例 源码340多套订餐企业模板高大尚响应式网站模板html5网页静态模板Bootstrap扁平化网站源码css3手机seo自适响

    各种风格简洁单页响应式html5模板_简洁 响应式 单页 跳转 设计 案例 源码340多套订餐企业模板高大尚响应式网站模板html5网页静态模板Bootstrap扁平化网站源码css3手机seo自适响 ...

  2. python实现带头结点的单链表的就地逆置_带头结点的单链表就地逆置

    本题要求编写函数实现带头结点的单链线性表的就地逆置操作函数.L是一个带头结点的单链表,函数ListReverse_L(LinkList &L)要求在不新开辟节点的前提下将单链表中的元素进行逆置 ...

  3. 二叉链表和职工管理系统结合_职工信息管理系统单链表实现C语言源程序

    1 / 23 #include #include #include int saveflag=0; /* 单链表内容有无发生改变,是否需要存盘的标志 变量 */ struct employee { c ...

  4. mysql数据库如何让表单与表单关联共用_这样的表单如何做到和数据库相连,我想知道与SQL和mysql这两种的连接方法,在线等,谢谢各位!...

    主要的数据写入的步骤如下: 1. 写好数据库的连接字符串,包括你的数据库服务器.数据库名称.登陆用户.密码 string strConn = "Initial Catalog=" ...

  5. 404 单页应用 报错 路由_详解vue 单页应用(spa)前端路由实现原理

    写在前面:通常 SPA 中前端路由有2种实现方式: window.history location.hash 下面就来介绍下这两种方式具体怎么实现的 一.history 1.history基本介绍 w ...

  6. 单应性矩阵和仿射变换_仿射变换透射变换单应性矩阵

    答:使用perspectiveTransform(). findHomography 函数是求两幅图像的单应性矩阵,它是一个3*3的矩阵,但这里的单应性矩阵和3D重建中的单应性矩阵(透视矩阵3*4)是 ...

  7. python实现带头结点的单链表的就地逆置_设头指针为head,编写算法实现带头结点单链表head的就地逆置...

    链表问题大全!!!刚出炉的还热乎呢!! #include #include typedef struct node { int nDate; struct node *pstnext; }Node; ...

  8. python选出奇数并降序_奇数结点升序偶数结点降序的单链表排序(Python实现)

    题目 一个链表,奇数结点升序,偶数结点降序,要求变成一个全升序的链表. 例如:1->8->2->7->3->6->4->5,变为1->2->3-& ...

  9. python单链表排序_奇数结点升序偶数结点降序的单链表排序(Python实现)

    题目 一个链表,奇数结点升序,偶数结点降序,要求变成一个全升序的链表. 例如:1->8->2->7->3->6->4->5,变为1->2->3-& ...

  10. 单链表操作实现getelem_c语言实现--带头结点单链表操作

    可能是顺序表研究的细致了一点,单链表操作一下子就实现了.这里先实现带头结点的单链表操作. 大概有以下知识点. 1;结点:结点就是单链表中研究的数据元素,结点中存储数据的部分称为数据域,存储直接后继地址 ...

最新文章

  1. simple c语言,C语言——指针(simple).ppt
  2. 《从0到1学习Flink》—— Flink Data transformation(转换)
  3. 集群中几种session同步解决方案的比较[转]
  4. codeforces 872 D. Something with XOR Queries(思维)
  5. 巧用linux服务器下的/dev/shm/,避开磁盘IO不给力!
  6. Jmeter基础(二)
  7. HaspMap 多线程下 resize 死循环
  8. Python内置函数max()高级用法
  9. Varnish——CDN加速实现(单个后端服务器、缓存命中率情况)
  10. 新冠疫情相似句对判定,快速匹配准确答案
  11. struts2 返回html文本,Struts2 s:textfield文本示例
  12. spark、hadoop 问题合集
  13. 【ihaonet微测试】你出题,我开发
  14. 海康人脸认证设备对接
  15. windows 环境下 0x色彩对应表
  16. 最短哈密顿环 退火_模拟退火法计算最短路径 用 高效的 图论中哈密顿贿赂的 AI...
  17. openerp mysql_OpenERP雇员(员工)表与用户表关联字段解析
  18. 人工智能AI工程师职业规划指南
  19. win10 Telnet服务器 解决telnet正在连接127.0.0.1...无法打开到主机的连接 在端口 23: 连接失败
  20. 联想拯救者r720适合java么_联想拯救者R720重装Win10系统的正确姿势

热门文章

  1. linux_smb.conf配置详解_IT技术论文
  2. [CLR团队公告]CLR基础研究团队纲领
  3. java web 前端学习路线
  4. 华为云的Kubernetes实践之路
  5. mycat启动服务,后台日志报错Bit Server VM warning: ignoring option MaxPermSize
  6. 【D】分布式系统的CAP理论
  7. Survivor空间溢出实例
  8. 改动Oracle GoldenGate(ogg)各个进程的读检查点和写检查点
  9. 转载:Oracle导入导出命令的使用
  10. 一个注册表操作类,很有用!