#include <iostream>
#include <stdlib.h>
using namespace std;
typedef struct LNode{
int data;
LNode *next;
}LNode,*LinkList;
void CreatLinkList(LinkList &L){
LNode *r,*s;
L=(LinkList)malloc(sizeof(LNode));
int n;
cin>>n;
s=L;
while(n--){
r=(LNode*)malloc(sizeof(LNode));
cin>>r->data;
s->next=r;
s=r;
}
s->next=NULL;
}
void showList(LinkList L){
LinkList r;
r=L->next;
while(r){
cout<<r->data<<" ";
r=r->next;
}
cout<<endl;
}
void Tran_List(LinkList &L){
LNode *r,*p;
p=L->next;
L->next=NULL;
while(p){
r=p->next;
p->next=L->next;
L->next=p;
p=r;
}
}
int main(){
LinkList L;
CreatLinkList(L);
showList(L);
Tran_List(L);
showList(L);
return 0;
}
链表就地逆序(PS: 利用:头插法)
最新推荐文章于 2022-03-23 15:30:33 发布