本题要求实现一个函数,将给定的单链表逆转。

函数接口定义:

List Reverse( List L );

其中List结构定义如下:

typedef struct Node *PtrToNode;
struct Node {ElementType Data; /* 存储结点数据 */PtrToNode   Next; /* 指向下一个结点的指针 */
};
typedef PtrToNode List; /* 定义单链表类型 */

L是给定单链表,函数Reverse要返回被逆转后的链表。

裁判测试程序样例:

#include <stdio.h>
#include <stdlib.h>typedef int ElementType;
typedef struct Node *PtrToNode;
struct Node {ElementType Data;PtrToNode   Next;
};
typedef PtrToNode List;List Read(); /* 细节在此不表 */
void Print( List L ); /* 细节在此不表 */List Reverse( List L );int main()
{List L1, L2;L1 = Read();L2 = Reverse(L1);Print(L1);Print(L2);return 0;
}/* 你的代码将被嵌在这里 */

输入样例:

5
1 3 4 5 2

输出样例:

1
2 5 4 3 1
List Reverse(List L) {List p = L, q;L = NULL;while (p) {q = p;p = p->Next;q->Next = L;L = q;}return L;
}

6-1 单链表逆转 (20分)相关推荐

  1. 6-1 单链表逆转 (20分)两种实现方法。

    本题要求实现一个函数,将给定的单链表逆转. 函数接口定义: List Reverse( List L ); 其中List结构定义如下:typedef struct Node *PtrToNode; s ...

  2. pta:6-1单链表逆转(20分)

    大一下半期数据结构 数据结构实践任务2 pta:单链表逆转 这是一个新手小白学数据结构所经历的所有题目集. 本题要求实现一个函数,将给定的单链表逆转. 函数接口定义: List Reverse( Li ...

  3. 6-1 单链表逆转分数 20

    本题要求实现一个函数,将给定的单链表逆转. 函数接口定义: List Reverse( List L ); 其中List结构定义如下: typedef struct Node *PtrToNode; ...

  4. 6-4 单链表插入排序 (15分)

    6-4 单链表插入排序 (15分) 单链表插入排序 ###目的: 掌握单链表的应用和插入排序的思想. ###内容: 编写一个函数insertion_sort,对一个无序单链表采用插入排序的方式,将其按 ...

  5. java 链表逆转_java 实现单链表逆转详解及实例代码

    java 实现单链表逆转详解 实例代码: class Node { Node next; String name; public Node(String name) { this.name = nam ...

  6. 2-2 学生成绩链表处理 (20 分)

    2-2 学生成绩链表处理 (20 分) 本题要求实现两个函数,一个将输入的学生成绩组织成单向链表:另一个将成绩低于某分数线的学生结点从链表中删除. 函数接口定义: struct stud_node * ...

  7. 6-4 学生成绩链表处理 (20分) 本题要求实现两个函数,一个将输入的学生成绩组织成单向链表;另一个将成绩低于某分数线的学生结点从链表中删除。 函数接口定义: ```cpp struct stu

    6-4 学生成绩链表处理 (20分) 本题要求实现两个函数,一个将输入的学生成绩组织成单向链表:另一个将成绩低于某分数线的学生结点从链表中删除. 函数接口定义: struct stud_node *c ...

  8. 6-1 单链表逆转(PTA数据结构与算法题目集)

    本题要求实现一个函数,将给定的单链表逆转. 函数接口定义: List Reverse( List L ); 其中List结构定义如下: typedef struct Node *PtrToNode; ...

  9. 3-5 单链表分段逆转 (20 分)

    给定一个带头结点的单链表和一个整数K,要求你将链表中的每K个结点做一次逆转.例如给定单链表 1→2→3→4→5→6 和 K=3,你需要将链表改造成 3→2→1→6→5→4:如果 K=4,则应该得到 4 ...

最新文章

  1. 编程之美:编程判断两个链表是否相交
  2. 【 FPGA 】FIR滤波器目录
  3. WCF-学习笔记概述之计算服务(1)
  4. 李彦宏喊你来坐出租车,无人驾驶的那种;百度还要继续搞芯片,联手华为的那种...
  5. C++读写局域网共享
  6. Netty 源码(ChannelHandler 死磕)
  7. jQuery控制表格垂直滚动条
  8. 用Docker打造多版本PHP运行环境
  9. [JLOI2011]不重复数字
  10. docker 返回错误信息与本地不一致_Docker基本配置及常用命令
  11. 徐雷FrankXu 内推 杭州 蚂蚁金服招聘 java开发工程
  12. 虹软java接摄像头_虹软人脸识别SDK(java+linux/window) 初试
  13. c语言see函数,vprintf() - C语言库函数
  14. mysql8修改密码
  15. 【Python】Python3.7.3 - 虚拟环境:pyvenv过时;使用python -m venv命令
  16. access 如何使用dolby_用Access开发《生产管理系统》
  17. Python使用扩展库progressbar显示进度条
  18. 硕士论文中期汇报ppt_做一场合格的中期汇报
  19. MAVEN下载修改settings.xml
  20. json在线解析(json在线解析)

热门文章

  1. GBD+ | 绿色经济与产业链互联网之关系——进击的文创?
  2. border 设置 dashed 时的虚线间距
  3. 单反拍摄技巧:适当使用手动调焦
  4. 怎么进入命令行操作mysql数据库_MySQL数据库之如何用命令行进入mysql具体操作步骤...
  5. ES 查询关键字(match, term, range,terms)、组合多查询(must, should, must_not,filter)、分页、排序sort、高亮highlight
  6. 菜鸟学习OGRE和天龙八部之十八: 获得档案(Archive)文件列表
  7. 使用AI自动生成PPT --- Gamma
  8. 关于浏览器内核的一些小知识,明明白白选浏览器!
  9. 两种常见的美容仪器认证:英国UKCA认证欧盟ce认证
  10. 实例26 循环体的过滤器