【数据结构课程作业】单链表就地逆置

stdlib.h>typedef struct List {int val;struct List *next;}List;t){t ();(*h)->next = *t;(*t)->next = NULL;printf(“初始化成功\n”);}h){int input;while(~scanf(“%d”, &input)) {)malloc(sizeof(List));if(!p) exit(-1);p->val = input;p->next = h->next;h->next = p;}printf(“创建成功\n”);return h;}void PrintList(List *h){List *p = h->next;while(p) {if(p->next) printf(“%d “, p->val);p = p->next;}printf(“\n”);}void ClearList(List *h){;while(h) {p = h;h = h->next;free(p);}printf(“清空完毕\n”);}p){if(p->next) InvertList(p, p->next);p->next = f;}int main(){, *tail = NULL;InitList(&head, &tail);//传入指针的地址,这是一个二级指针printf(“逆序输入数据,,以EOF结束标志\n”);head = CreateList(head);//输入数据创造一个带头带尾的链表PrintList(head);InvertList(NULL, head);//递归倒置printf(“逆置成功\n”);PrintList(tail);//尾指针变成了头指针ClearList(tail);return 0;}

婚姻犹如一艘雕刻的船,看你怎样去欣赏它,又怎样驾驭它。

【数据结构课程作业】单链表就地逆置

相关文章:

你感兴趣的文章:

标签云: