/*
*数据结构:线性表的链式表示
*单链表 循环链表
*线性表元素序号从1算起
*Date:2017/4/13
*/
#include <stdio.h>
#include <stdlib.h>
#define InitSize 100
#define ElemType char
typedef struct LNode{
ElemType data;
int length;
struct LNode *next;
}LNode,*LinkList;
LinkList createList1(LinkList &L); //头插法建立单链表
LinkList createList2(LinkList &L); //尾插法建立单链表
LNode *getElem(LinkList L,int i); //按序号查找表结点值
LNode *locateElem(LinkList L,ElemType e); //按值按序号顺序查找表结点在链表L中第一次出现的位置
void listInsert(LinkList L,int i,ElemType e); //在第i个结点位置插入新结点,元素值为e
void listDelete(LinkList L,int i,ElemType *e); //删除第i个结点,用e返回删除元素的值
void printList(LinkList L); //按先后序号打印链表
bool emptyList(LinkList L); //判断链表是否为空,为空就返回true,否则返回false
int lengthList(LinkList L); //返回链表长度
void destoryList(LinkList &L); //销毁链表
LinkList createList1(LinkList &L){
LNode *s;
char ch;
L = (LinkList)malloc(sizeof(LNode));
L->length = 0;
L->next = L; //头
数据结构(线性表):单循环链表
最新推荐文章于 2023-07-03 22:06:25 发布
本文详细探讨了线性表的一种实现形式——单循环链表,包括其定义、特性以及如何操作如插入和删除元素。通过实例`abcepoui`展示了单循环链表的构造过程,并进一步讨论了它在存储和遍历数据时的优势。
摘要由CSDN通过智能技术生成