分析:

先理解倒置: 倒置前:1->2->3 倒置后:3->2->1

思路:先沿着链表从头到尾扫一遍 将链表的每个结点的data的值依次入栈;  在沿着链表扫一遍 将栈中的元素一次出栈 并填入到每个结点的data中.

算法如下:

void reverse_list(LinkedListTP * head)

{

LStackTP ls,p;

DataTpye x;

InisStack(&ls);   /*初始化链栈*/

p= head->next; /*将链栈p的指针指向头结点指向的结点*/

while(p!=null){

Push(&ls,p->data); /*将链表的data依次入栈到ls*/

p=p->next;

}

p= head->next; /*将p重新指到链表头结点所指向的结点*/

while(!EmptyStack(&ls)){

Pop(&ls,&x);

p->data=x; /*替换链表的数据?*/

p=p->next;

}

}

转载于:https://www.cnblogs.com/shihujiang/archive/2010/08/17/2396380.html

借助栈将一个带头节点的单链表倒置相关推荐

  1. 【数据结构】8. 队列(带头节点的单链表实现)(完整代码实现:初始化、入队列、出队列、获取队头元素、获取队尾元素、获取队列中有效元素的个数、判空、销毁)

    目录 Queue.h Queue.c test.c Queue.h #pragma once //采用带头节点的单链表实现队列typedef int DataType;typedef struct Q ...

  2. 【不带头节点的单链表】

    不带头节点的单链表 前言 一.结构体设计 二.函数实现 1. 初始化 2. 购买一个新节点 3. 头插 4. 尾插 5. 按位置插入 6. 头删 7. 尾删 8. 按位置删 总结 补充代码 前言 单链 ...

  3. 不带头节点的单链表如何头插(多图易懂)

    文章目录 缘起 带头节点的头插 不带头节点的头插 错误的代码 为什么错误 如何修改 返回新的头指针 二级指针 缘起 本文想说的是单向非循环链表的头插.单向非循环链表,可以是带头节点的,也可以是不带头节 ...

  4. java带头节点的单链表_自己实现集合框架(五):带头结点单链表的实现

    这是系列文章,每篇文章末尾均附有源代码地址.目的是通过模拟集合框架的简单实现,从而对常用的数据结构和java集合有个大概的了解.当然实现没有java集合的实现那么复杂,功能也没有那么强大,但是可以通过 ...

  5. 数据结构-带头节点的单链表(C语言)超详细讲解

    前面我们学到线性表的顺序存储结构(顺序表),发现它有着明显的缺点:插入和删除元素时需要频繁的移动元素,运算效率低.必须按事先估计的最大元素个数申请连续的存储空间.存储空间估计大了,造成浪费空间:估计小 ...

  6. 头插法和尾插法建立带头节点的单链表

    有两种方法建立单链表,尾插法和头插法,他们的区别是:头插法是按照输入元素倒序建立,为尾插法为顺序插入,并且多一个尾节点,我们一般使用尾插法. 一.头插法 代码为: pCurr -> next = ...

  7. 数据结构不带头节点跟带头节点的单链表区别,C语言代码展示

    单链表头插法 不带头结点 void FronttList1(List *L) {List p;ElemType x;printf_s("请输入一组数据,以'0'为结束符\n");s ...

  8. 带头节点的单链表逆置

    #include <stdio.h> #include <stdlib.h> typedef struct node { int data; struct node *next ...

  9. 不带头结点的单链表------C语言实现

    1 /****************************************************/ 3 File name:no_head_link.c4 Author:SimonKly ...

最新文章

  1. 关于CI的服务器与最佳实践,这里有一些思考
  2. ecshop_v2.7.3下载地址
  3. 【SeeMusic】购买付费版本 ( 进入购买页面 | 购买流程 )
  4. getrealdays oracle_oracle 日期函数介绍
  5. 查看oracle资源使用情况,Oracle查询表空间使用情况
  6. 309. 最佳买卖股票时机含冷冻期
  7. windows中squid更改默认安装路径配置说明
  8. 34个有用的 JavaScript 库,现在就可以用起来
  9. IDEA 插件开发 鼠标事件
  10. python selenium 下载附件通过oss上传
  11. 4种Word文档解除密码保护的方法
  12. 中标麒麟linux操作系统下Chrome/Chromium的安装
  13. windows 下删除EFI分区方法
  14. 第十二周项目一----图基本算法库
  15. 大数据技术如何有效阻击网络黑产?
  16. win7系统桌面的东西不见了,提示您已使用临时配置文件登录
  17. sql server数据库错误数据恢复(数据库连接失效,无法附加查询)
  18. 信号量和互斥锁的区别
  19. 无胁科技-TVD每日漏洞情报-2022-12-13
  20. PyCharm 中 import 导包呈现灰色,已解决

热门文章

  1. Python+经济学:资本边际效率与IRR
  2. 微信小程序与servlet交互
  3. java.lang.ClassNotFoundException: org.eclipse.jdt.internal.compiler.env.INameEnvironment
  4. MMCM时钟动态调相
  5. 转载_Feedforward ANC 主动降噪原理
  6. php webshell探索-常见小马
  7. 每个男人心中都有一段《西西里的美丽传说》
  8. python 爬取doc文档
  9. 2013-1-20·
  10. 实战一:模拟手机充值场景