第一种,适用于带头结点得链表:

代码如下:

struct ListNode {int val;struct ListNode *next;};struct ListNode* ReverseList(struct ListNode* head ) {struct ListNode* mid;    //中间的结点,用来操作的struct ListNode* front;   //前面的结点struct ListNode* rear;    //后面的结点rear=head->next;mid=NULL:front=NULL:while(mid){front=mid;mid=rear;rear=rear->next;mid->next=front;}head->next=mid;return head;
}

图解代码:


第二种,没有头结点的链表:

struct ListNode {int val;struct ListNode *next;};struct ListNode* ReverseList(struct ListNode* head ) {struct ListNode* front;struct ListNode* rear;front=NULL;rear=NULL;while(head){rear=head->next;head->next=front;front=head;head=rear;}return front;
}

图解代码:

图记逆置单链表的两种方法(C语言)相关推荐

  1. (不带头结点的)单链表增删查改,逆置单链表(两种方法),求两个单链表的第一个公共结点,合并两个单链表,单循环链表中判断第一个入环点,约瑟夫环

    补充了每个算法的基本思想,并且画了思路图,源代码都经过调试成功 1.SlistNode.c文件 (1) (不带头结点的)单链表增删查改 #include "SlistNode.h" ...

  2. 用C++实现单链表的创建、逆置和输出 的两种方法

    http://blog.csdn.net/lfeng_coding/article/details/47300563 题目描述:在已知单链表头节点的情况下,设计算法逆置单链表并输出 方法一:采用首先将 ...

  3. 逆置单链表——递归与非递归

    文章目录 前言 方式一:非递归 原理 图解 实现代码 方式二:递归 原理 图解 实现代码 完整实现 代码 运行结果 前言 单链表的逆置图解 方式一:非递归 原理 非递归逆置单链表的本质是创建一个新的链 ...

  4. java实现单链表就地逆置,单链表的就地逆置讲解

    { List *q; List *p = L->next; L -> next = NULL; //单链表就地逆置 while (p != NULL) { q = p -> next ...

  5. 无头结点单链表的逆置_第1章第2节练习题11 就地逆置单链表

    ## 问题描述 > 试编写在带头结点的单链表就地逆置,所谓"就地"是指辅助空间为O(1) ## 算法思想1 > 将头结点摘下,然后从第一个结点开始,依次插入到头节点的后 ...

  6. 单链表-逆置单链表(修改指针指向且三个指针)

    题意: 采用带头结点的单链表,设计一个算法将其就地逆置,所谓"就地"是指辅助空间O(1). 这里可以有两种方法做: 1.头插法且双指针 2.改变指针指向且三指针 两方法共同点: 头 ...

  7. 单链表-逆置单链表(头插法且双指针)

    题意: 采用带头结点的单链表,设计一个算法将其就地逆置,所谓"就地"是指辅助空间O(1). 这里可以有两种方法做: 1.头插法且双指针 2.改变指针指向且三指针 两方法共同点: 头 ...

  8. c语言pop逆置单链表,C语言实现单链表

    实现单链表的以下操作: list.h: #ifndef __LIST_H__ #define __LIST_H__ #include #include #include typedef int Dat ...

  9. 逆置单链表c语言程序,(数据结构C语言版)顺序表和单链表的逆置

    <(数据结构C语言版)顺序表和单链表的逆置>由会员分享,可在线阅读,更多相关<(数据结构C语言版)顺序表和单链表的逆置(7页珍藏版)>请在人人文库网上搜索. 1.实验1-1顺序 ...

最新文章

  1. github上可供新手阅读和玩耍的java项目有哪些??
  2. Win10 EPROCESS 断链
  3. 独家干货 | 林轩田机器学习课程精炼笔记!
  4. Linux云服务器安装Redis并设置远程连接设置开机自启
  5. P1401 城市(30分,正解网络流)
  6. BERT跨模态之后:占领了视觉常识推理任务榜单TOP 2!
  7. java 方法 示例_Java集合的lastlastIndexOfSubList()方法和示例
  8. 轻松实现 CTreeCtrl 的全选与反选
  9. 准备一些万圣节的乐趣——UI设计素材模板
  10. C++语言类的继承与派生介绍和示例
  11. ie浏览器打字不显示文字框命令
  12. matlab最优化工具箱下载,matlab emd工具箱下载
  13. 改变PSD文件单一的图标,让图标变成图像缩略图
  14. simulink 调整系统采样时间 示波器显示时间
  15. mysql 加号_从数据库中读取字符串时其中的空格变成加号
  16. 微信小程序(uniapp)-实现分享图片给微信好友
  17. e1000网卡驱动第二天
  18. layui复选框,设置部分可选
  19. 如何改变Dev-C++的背景色
  20. H5页面保存base64图片到本地

热门文章

  1. 要玩大数据,没有数据怎么玩?这里推荐一些33款开源爬虫软件给大家。
  2. NVIDA apex 安装错误
  3. MTA考java_27.8.5 imsimta 计数器
  4. 走进微信公众号实现关注之后推送一条服务器自定义的消息给用户
  5. 设计师与美工的素材网站
  6. 简:繁体转为简体 20140712
  7. 咸鱼Maya笔记—向量渲染
  8. 排序算法--快速排序(QuickSort)、 3区快速排序(3 Way QuickSort)原理、适用场景及代码示例
  9. 微信小程序开发POST请求
  10. auto.js对接联众的一个实例