目的:领会循环单链表存储结构和掌握循环单链表中的各种基本运算算法设计。
内容:实现循环单链表的各种基本运算和整体建表算法。(假设循环单链表的元素类型 ElemType 为 char)
程序要求:
1.初始化循环单链表h。
2.依次采用尾插法插入a、b、c、d、e元素。
3.输出循环单链表h。
4.输出循环单链表h的长度。
5.判断循环单链表h是否为空。
6.根据用户输入的位置,输出循环单链表h的元素。
7.根据用户输入的元素,输出循环单链表h的元素位置。
8.根据用户输入的位置和元素,对循环单链表h插入新的元素。
9.输出循环单链表h。
10.根据用户输入的位置,删除循环单链表h相应的元素。
11.输出循环单链表h。
12.释放循环单链表h。
----------------------------------------------------------------------------------------------
定义循环单链表的数据结构
#include <iostream>
using namespace std;
typedef char ElemType;
typedef struct node
{
ElemType data;
struct node *next;
} LinkList;
1.初始化循环单链表
void InitList(LinkList *&L)
{
L= new LinkList;
L->next=L;
}
2.尾插法建表
最后一个节点指向头节点,形成循环单链表。