我是靠谱客的博主 害羞信封,这篇文章主要介绍尾插法循环链表,现在分享给大家,希望可以做个参考。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <stdio.h> #include <stdlib.h> #define ElemType int struct ListNode { ElemType e; struct ListNode *next; }; typedef struct { struct ListNode *Head; struct ListNode *Tail; }List,*pList; int insertTail(ElemType X, pList L) { /*建指针,分内存,赋值*/ struct ListNode *newP = (struct ListNode *)malloc(sizeof(struct ListNode)) ; if (newP == NULL ) { perror("out of space!"); return -1; } /*元素赋值*/ newP->e = X; /*插入到链表尾部,定位新的尾指针*/ newP->next = L->Tail->next; L->Tail->next = newP; /*鸠占鹊巢*/ L->Tail = newP; return 0; } int main() { pList L = (pList)malloc(sizeof(List)) ; /*为链表分配内存*/ if (L == NULL) { perror("out of space!"); return -1; } /*分配尾指针*/ L->Tail = (struct ListNode *)malloc(sizeof(struct ListNode)); if (L->Tail == NULL) { perror("out of space!"); return -1; } /*初始化链表*/ L->Tail->next = L->Tail; L->Head = L->Tail->next; /*接个参*/ int i; printf("来插我呀:>"); for (; scanf("%d",&i) != EOF;) { printf("来插我呀:>"); insertTail(i,L); } /*遍历节点*/ while (L->Head->next != L->Tail->next) { printf("%d ", L->Head->next->e); L->Head = L->Head->next; } printf("n%d ",L->Tail->e); puts("nojbk!"); return 0; }

最后

以上就是害羞信封最近收集整理的关于尾插法循环链表的全部内容,更多相关尾插法循环链表内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部