创建一个包含头节点的循环链表。用这个链表存储键盘输入的学号姓名,录入的数量由键盘给定。 编写打印函数,输出链表中的所有数据。要求从链表的第一个节点开始输出。 编写插入函数,实现在第i个节点(i由键盘输入,i=0表示插入的结点作为第1个结点)之后插入一个元素为x的节点。
时间: 2023-04-29 19:05:42 浏览: 101
题目:创建一个包含头节点的循环链表。用这个链表存储键盘输入的学号姓名,录入的数量由键盘给定。编写打印函数,输出链表中的所有数据。要求从链表的第一个节点开始输出。编写插入函数,实现在第i个节点(i由键盘输入,i=0表示插入的结点作为第1个节点)之后插入一个元素x。
回答:
这道题的主要难点在于理解题意和操作链表,以下是整体思路:
1. 创建一个循环链表,包含头节点,且头节点的指针域指向自身;
2. 从键盘输入数据,存储在链表中。数量由键盘指定;
3. 编写打印函数,按从表头开始的顺序遍历链表,输出所有数据;
4. 编写插入函数,实现在第i个节点后插入一个元素x;
具体实现步骤如下:
1. 创建一个新节点,设置元素值和指针域;
2. 查找第i个节点,从头节点开始循环i次,找到第i个节点;
3. 将新节点的指针域指向原节点的指针域;
4. 将原节点的指针域指向新节点。
注:需要特别注意循环链表的结构和操作方式。
代码实现如下:
阅读全文