倒插法实现链表逆置
2011-05-23 15:48
239 查看
1: void invert(LinkedList &head)
2: {
3: LinkedList p;//指向当前工作节点
4: LinkedList pn;//指向工作节点的前驱节点
5:
6: //初始化,p指向链表第一个节点,head->next=NULL,即为单独的表头节点。
7: p = head->next;
8: head->next = NULL;
9:
10: while (p)
11: {
12: pn = p->next;
13: p->next = head->next;
14: head->next = p;
15: p = pn;
16: }
17:
18:
19: }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
相关文章推荐
- 对带头结点的单链表实现就地逆置的算法分析
- 【C++】模版实现双向链表的各种操作(如:逆置、去重Unique、分类(冒泡)、合并)
- 单链表的逆置-C++实现
- C语言:单链表实现(二) 就地逆置,就地归并
- 链表实现逆置
- 链表中插入数据元素x保持原有升序保持不变 / 就地逆置的实现(C)
- 利用头插法实现单向链表的逆置
- 单链表原地逆置java实现
- 双向链表操作(逆置三种实现以及 冒泡排序 )
- DS之链表实现就地逆置
- 【C++】模版实现双向链表的各种操作(如:逆置、去重Unique、分类(冒泡)、合并)
- c++中的双向链表写法,主要实现(增删查改,链表逆置,构造函数,运算符重载,等)
- 实现单链表逆置
- 单链表的逆置-C++实现
- 线性表的就地逆置(数组实现+链表实现)
- 使用STL之list实现链表逆置
- 对单链表实现就地逆置
- 将链表L就地逆置,即利用原表各结点的空间实现逆置
- 单链表逆置-新建链表(头插法实现)/原链表(逐个实现逆转)
- 单链表逆序生成及逆置的完整实现