数据结构与算法(线性表部分)学习总结

线性表部分

Posted by Zexin Zhang on October 24, 2017

线性表



本章知识结构图

img

线性表的概念

线性表是由一组同类型数据元素组成的有限序列,属于线性逻辑结构数据,可以表示为(a1,a2,~,an);这里ai(a <= i <= n)的数据类型可以是简单类型(如整型、实型、字符型等),也可以是结构类型等。


顺序表

顺序表的存储结构分析

数据元素在存储器中占用相邻的物理存储区域。
用整型变量last来记录最后一个数据元素在数组中的位置(下标)。


#define maxlen 100

typedef struct{
	Datatype data[maxlen];
	int last;
}Sequenlist;

Sequenlist x,*L;    //附指针

L=&x;



基本运算实现

1.顺序表置空表算法

//直接建空表

void SqLsetnull(Sequenlist *L){
	L->last=-1;
}

//申请动态空间

Sequenlist *SqLsetnull(){
	Sequenlist *L;
	L=(Sequenlist *)malloc(sizeof(Sequenlist));
	L->last=-1;
	return L;
}

链表



线性表的应用