PTA 6-1 单链表逆置* (20 分)

已知单链表的结点结构定义如下:

typedef struct NODE {
int data;
struct NODE *next; } NODE; 说明:data 为数据域。next 为指针域,指示后继结点。

请编写函数,将带附加头结点的单链表逆置。

函数原型 void Reverse(NODE *head); 说明:参数 head
为单链表的头指针。函数将单链表中数据元素的排列顺序颠倒过来。

裁判程序 int main() {
NODE *h;
Create(&h);
Input(h);
Reverse(h);
Output(h);
putchar(’\n’);
Destroy(&h);
return 0; } 说明:Create 函数用于创建链表,Destroy 函数用于销毁链表。Input 函数用于输入链表:首先输入结点数,然后输入这些数据元素。Output 函数用于输出单链表,数据元素之间以空格间隔。

输入样例 5 28 47 79 52 36 输出样例 36 52 79 47 28

代码如下:

void Reverse(NODE *head){NODE *p,*q,*r;
p=head->next;
q=NULL;
head->next=NULL;
while(p){r=p->next;p->next=q;q=p;p=r;
}head->next=q;
}

PTA 6-1 单链表逆置相关推荐

  1. 借助于栈结构将一个单链表逆置

    借助于栈结构将一个单链表逆置. 输入输出样例:1组 #1 样例输入: 5 //链表中有几个元素 1 2 3 4 5 //链表中的元素分别是什么 样例输出: 5 4 3 2 1 //逆置后输出,利用栈结 ...

  2. C语言实现不带头结点的单链表逆置的三种方法

    C语言实现不带头结点的单链表逆置的三种方法 直接循环 头插法 递归法 END! 直接循环 图片解释 ListNode* ReverseList1(ListNode *head) {if(head == ...

  3. 7-4 单链表基础应用(4)--单链表逆置

    编程实现一个简易学生信息管理系统,按如下步骤分别用自定义函数实现: (1) 根据输入信息创建单链表并输出所有结点信息.每个学生的信息包括姓名和成绩: (2) 将上一步创建的单链表逆置后并输出所有结点信 ...

  4. 单链表逆置:空间复杂度O(1)

    带头结点单链表逆置 从链表(带头结点)首个数据结点开始,重新头插法建表,将节点链接到头结点上 //单链表结点结构 typedef struct LNode {int data;struct LNode ...

  5. 单链表操作10-带头结点的单链表逆置(个人学习笔记,仅供参考)

    带头结点的单链表逆置 题目要求 单链表结点定义 函数接口定义 测试程序样例 输入样例 输出样例 答案 题目要求 设计算法Reverse( ),将带头结点的单链表A逆置,要求利用原有链表的链点,最后输出 ...

  6. java数据结构之单链表逆置算法

    单链表逆置算法1 设计思想:在链表类中新加成员方法getNode(int i),用来获取指定位置的节点,新建一个空单链表,将原链表的每个节点按照从后往前的顺序依次取出,再把节点的数据依次添加到新的链表 ...

  7. 数据结构:单链表逆置

    实验要求: 写出将单链表逆置的算法.即令单链表的第一个结点变为最后一个结点,第二个结点变为倒数第二个结点,-,最后一个结点变为第一个结点. 依次从键盘读入数据,逆序建立链表L: 逆置链表L(创建新的链 ...

  8. c语言借助栈单链表逆置,借助栈实现单链表逆置--数据结构

    标题: 借助栈实现单链表逆置 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述: 用链式存储实现栈的初始化.入栈.出栈.取栈顶.判栈空等操作,在主函数中借助栈的基本 ...

  9. 7-14 单链表基础应用(4)--单链表逆置

    作者 chenmin 单位 福建工程学院 编程实现一个简易学生信息管理系统,按如下步骤分别用自定义函数实现: (1) 根据输入信息创建单链表并输出所有结点信息.每个学生的信息包括姓名和成绩: (2) ...

最新文章

  1. Angular使用@Input和@Output实现父子组件互相传参(类似Vue的props和this.emit)
  2. spark无法与服务器建立稳定连接,无法在Spark中将从站连接到主站
  3. [转载]2000/XP下删除隐藏旧网卡方法
  4. 北斗导航 | Python实现读取GPS(txt)数据并画轨迹
  5. 【SpringBoot集成ElasticSearch 01】2️⃣ 种方式的高级客户端 RestHighLevelClient 使用(依赖+配置+客户端API测试源码)
  6. 常见索引结构—FST
  7. 前端学习(1874)vue之电商管理系统电商系统之修改element-ui组件的按需导入
  8. SpringCloud创建项目父工程
  9. ehcache 实现缓存共享
  10. python list拆分_python里如何把一个list分成两个
  11. cad刷新快捷键_100个快捷键50个CAD技巧,助你玩转CAD
  12. Java取邮箱名_邮件开发 中的邮箱地址提取!
  13. 解决phpstudy的Apache启动失败
  14. python短信验证码_python发送短信验证码
  15. SQL面试练习题一(基础)
  16. Spark入门(五)——Spark Streaming
  17. 360 2013校园招聘笔试题(含参考答案)
  18. Jetpack系列之Navigation----入门(五)
  19. 使用autoware的calibration_toolkit联合标定双目相机和激光雷达(ZED and VLP-16)
  20. 都是行业盛宴,AWE和CES等展会到底有啥不一样?

热门文章

  1. 第4章 分支结构程序设计总结
  2. 如何用Peercast发布和收听电台
  3. 一幅RGB彩色原图和其三个分量的显示,RGB图转换成HSI的显示
  4. 华为的鸿蒙系统是海思_华为智慧屏将应用鸿蒙系统,搭载海思鸿鹄818芯片
  5. github 绑定阿里云购买的域名,步骤梗概
  6. Vuex,iView UI面包屑导航使用扩展详解
  7. Cadence OrCAD Capture 将Port信息从底层更新到顶层的方法
  8. 【Bzoj3631】松鼠的新家
  9. Meizu M8 SDK开发初体验
  10. 百分位数的计算原理--NumPy数组实现