#include <stdio.h>
#include <stdlib.h>
typedef int ElementType;
typedef struct Node *PtrToNode;
struct Node {
ElementType Data; /* 存储结点数据 */
PtrToNode Next; /* 指向下一个结点的指针 */
};
typedef PtrToNode List; /* 定义单链表类型 */
List Read(); /* 细节在此不表 */
void Print( List L ); /* 细节在此不表 */
List Reverse( List L );
int main() {
List L1, L2;
L1 = Read();
L2 = Reverse(L1);
Print(L1);
Print(L2);
return 0;
}
List Reverse(List L) {
PtrToNode q,tmp;
List list;
tmp = L;
list->Next=NULL;
// 头插法 第一个应该后移
while(tmp) {
q = tmp->Next;
tmp->Next= list;
list=tmp;
tmp=q;
}
return list;
}