第2章-2.1、2.2(线性表的顺序表示和实现)

Line Table

数据结构的经典,线性表还是挺有深意的,顺序表示就更为简单了(相比于链式,尤其是实现的代码),但是,链表,我个人,认为,比顺序表示更方便、快捷、高效(还没谈链表,不扯远了)🤣

申请内存里面,一片连续的存储区域,顺序表示线性表的简单之处,就在于可以像数组操作一样,操作顺序线性表

Status InitList_Sq(SqList& L)
{
	L.elem = (ElemType*)malloc(LIST_INIT_SIZE*sizeof(ElemType));
	if (!L.elem)
	{
		exit(OVERFLOW);
	}
	L.length = 0;
	L.listsize = LIST_INIT_SIZE;
	return 0;
}

对于“一维”(数据元素维度),而言,不涉及复杂的数据结构,学起来比较容易理解,而且借助于已有的“数据类型”(值的集合和定义在集合上的操作),在编译环境里面,操作起来,也更方便

线性表的“值插入操作”显得尤为重要,因为初始化只是初始化一个存储空间,并赋予线性表结构长度、初地址、存储量(MAX)等,数据填充需要插入操作

Insert List

遍历、查看等,诸多操作不在一一实现,根据定义和操作规范,选定指定的数据类型,就可以自己写出来代码

Status GetElm(SqList L, int i, ElemType& e)
{
	if (i<1 || i>L.length)
	{
		return OVERFLOW;
	}
	e = L.elem[i-1];
	return OK;
}
Console GUI
Vs 2019 Com

Vs写Qt不咋地,不过对于C类语言,堪称最强大开发环境🤣,哎,老了,不适合体验其它好玩的开发环境了,沉迷Vs,无法自拔

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注


皖ICP备2021003932号
召唤伊斯特瓦尔