18 循环链表
1,循环链表的初始化 定义一个头结点和尾指针的方式,头结点在这里是用来连接 第一个结点和最后一个结点的结点 1 #include<stdio.h> 2 #include<stdlib.h> 3 4 typedef struct Link { 5 int data; 6 struct node* next; 7 }link; 8 9 link* head_node; //声明一个头结点 10 link* ptail; //声明一个尾指针 11 12 link* initLink() //初始化循环链表 13 { 14 link* new_node; 15 head_node = (link*)malloc(sizeof(link)); 16 ptail = head_node; //尾指针指向头结点 17 18 //初始化创建10个结点的循环链表 19 for (int i = 0; i < 10; i++) 20 { 21 link* new_node = (link*)malloc(sizeof(link)); 22 ptail->next = new_node;//把新节点接到链表上去,相当于head_node->next = new_node,但这里不能使用head_node->next,而是使用ptail->next,因为头结点不能动 23 24 new_node-