线性结构的简单总结

大二上学了数据结构,

对各种线性结构的结构体如何定义,和一些基本操作

简单总结一下:

一、线性表

①顺序表结构体

typedef struct

{

ElemType *elem;//存储空间基址

int length;//当前长度

int listsize;//当前分配的存储容量

}SqList;

基本操作

构造线性表 L.elem =(ElemType*)malloc(LIST_INIT _SIZE*sizeof(ElemType));

 

增加空间 L.elem =(ElemType*)realloc(LISTINCREMENT*sizeof(ElemType));

listsize+=LISTCREMENT;

判空 if(!L.elem) 

判满 if(length==listsize)

插入数据 L.elem++ = e;

length++;


 

②链表结构体

typedef struct LNode

{//结点

ElemType data;//数据

struct LNode  *next;//下一个结点地址

}*Link,*Position;

 

typedef struct

{//链表

Link head,tail;//头结点和尾结点地址

int len;//链表长度

}LinkList;

 

1)线性链表

 

2)循环链表

 

3)双向链表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值