您的位置:首页 > 其它

头插法翻转链表

2016-09-29 11:49 120 查看

头插法翻转链表

#include <stdio.h>
#include <stdlib.h>

struct Node;
typedef struct Node *PtrNode;
struct Node
{
int value;
PtrNode Next;
};

// 头插法翻转单向链表,把每一个节点插在头结点之后
PtrNode InvertList( PtrNode Head )
{

if( Head->Next == NULL )
return Head;

PtrNode Cur,Tmp;
Cur = Head->Next;
Head->Next = NULL; //保证第一个节点不会自己指向自己

while( Cur!= NULL )
{
Tmp = Cur->Next;
Cur->Next = Head->Next;
Head->Next = Cur;
Cur = Tmp;
}

return Head;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: