数据结构基础--单链表逆序
来源:互联网 发布:js原型和原型链的特点 编辑:程序博客网 时间:2024/06/05 13:28
最近同学问了一道在数据结构的课本上的题,做了很久才做出来,可见课本和基础是很重要的
题目是将一个单链表逆序但是不允许申请额外的空间做中转
思路大抵为:
初始状态:定义三个node *prev,node *head,node *next; prev指向NULL,head指向链表的头结点A,next指向第一个结点B,将head->next指向prev即NULL,prev=head,head=next,next=head->next,经过以上变化可以将图一化成图二:
从图1到图2的代码如下:
head->next=prev;prev=head;head=next;next=head->next;
这时重复上面的步骤,就可以将图2转化为图3:
然后继续重复,直到:
即head->next==NULL;为终止条件;
代码如下:
typedef struct{ typename data; node *next;}node;node* List_Reverse(node *L){ node *head=L; node *prev=NULL; node *next; while(head->next!=NULL) { next=head->next; head->next=prev; prev=head; head=next; } return prev;}
阅读全文
0 0
- 数据结构基础--单链表逆序
- 程序员面试宝典之数据结构基础----单链表的逆序打印
- 数据结构--单链表的逆序
- 数据结构--单链表逆序输出
- 数据结构 单链表逆序
- 数据结构:单链表(逆序)
- 【数据结构】单链表逆序
- 【数据结构】Java单链表的逆序
- 程序员面试宝典之数据结构基础---⑤单链表逆序的递归与非递归实现
- 数据结构——20 单链表逆序
- 数据结构(二)单链表的逆序(带头节点)
- 数据结构java 单词逆序
- 算法设计和数据结构学习_8(单链表的递归逆序)
- 数据结构和算法设计专题之---单链表的逆序
- 算法设计和数据结构学习_(单链表的递归逆序)
- 数据结构之链表:实现单链表的逆序 (1)
- 算法设计和数据结构学习_6(单链表的递归逆序)
- sdut.acm2012级《程序设计基础Ⅱ)》_链表 数据结构实验之链表二:逆序建立链表
- LeetCode36-Valid Sudoku
- 第十三章 RememberMe——《跟我学Shiro》
- 找数达人
- Spring MVC--17.json参数接受--1.json,map
- 数据库中被问到的常见问题
- 数据结构基础--单链表逆序
- Redis基础使用
- h3c 构建中小企业网络 实验手册 第2章 笔记
- redis 发布订阅机制
- Java 注解:注解处理器获取泛型真实类型
- poj2631 Roads in the North(求树的直径裸题)
- 类中的集中特殊方法
- scala基础练习:实现日历练习
- sql语言语法