#include<stdio.h>#include<stdlib.h>typedefint ElementType;typedefstruct Node *PtrToNode;struct Node {
ElementType Data;
PtrToNode Next;};typedef PtrToNode List;
List Read();/* 细节在此不表 */voidPrint( List L );/* 细节在此不表 */
List Reverse( List L );intmain(){
List L1, L2;
L1 =Read();
L2 =Reverse(L1);Print(L1);Print(L2);return0;}/* 你的代码将被嵌在这里 */
输入样例:
513452
输出样例:
125431
代码如下:
List Reverse( List L )//申请一个结点,依次使用头插法将L的各个结点使用头插法接在新申请的结点后面就行{//最后返回head->Next刚好指向逆置后的链表
List head=(List)malloc(sizeof(List));
head->Next=NULL;
List p=L;
List q=NULL;while(p!=NULL){
q=p->Next;
p->Next=head->Next;
head->Next=p;
p=q;}return head->Next;}