数据结构-链表
文章平均质量分 58
parting_soul
大道至简
展开
-
关于链表的递归操作
不带头结点链表翻转思路: 假设有1,2,3,4,5,6,这样6个数构成一个链表,要进行翻转操作,结果应为6,5,4,3,2,1,假设要翻转1 ,那就要先翻转2,,要翻转2,就要翻转3,直到要翻转6,就是当剩下一个元素或者链表为空时作为结束条件假设2,3,4,5,6,已经翻转,此时结果为1,6,5,4,3,2,可见,我们只需将1移到2后面就行了,还可以看到1一直是指向2的,所以找到2的位原创 2015-11-07 12:22:34 · 1465 阅读 · 0 评论 -
将循环链表插在单链表头部
#include#includetypedef struct link_list{ int info; struct link_list *next;}node;node *init(){ return NULL;}node *create_headlink() //创建循环链表{ int x; node *head=(node *)ma原创 2015-09-28 00:47:57 · 281 阅读 · 0 评论 -
链表合集
单链表#include#includetypedef int datekey;typedef struct link_node{ datekey info; struct link_node *next;}node;node *init(){ return NULL;}void display(node *head)//输出各个节点的值{ n原创 2015-09-18 11:39:35 · 427 阅读 · 0 评论 -
链式栈
//链式栈就是顺序表的一种特殊情况,可以看成从从头结点进行插入删除操作#include#includetypedef int datatype;typedef struct link_stack{ datatype info; struct link_stack *next;}node;node *init(){ return NULL;}node *cre原创 2015-09-29 13:24:10 · 298 阅读 · 0 评论 -
链式队列
//基本与单链表相同,链式队列主要为头部删除,尾部插入,另外多了总指针指向队列的头和尾#include#includetypedef int datatype;typedef struct link_queue{ datatype info; struct link_queue *next;}node;typedef struct{ node *front原创 2015-09-30 13:37:33 · 349 阅读 · 0 评论