这学期一开始,接触到线性表的时候,其实上课有点懵懵的,毕竟上学期都是学具体的C++语言,而在讲线性表的时候转变为了更抽象的表示方法,但是在具体理解时用C++的类,链表去代入理解,我还是有一定收获的。 首先是线性表的定义啦,这里可以通过C++中的结构体/类去实现。 先是顺序表 #define MAXS ...
分类:
其他好文 时间:
2019-03-18 01:36:56
阅读次数:
188
本章以线性表的定义和特点为切入点,对顺序表和链表的初始化,取值,查找,插入,删除等相关操作进行详细的介绍。对线性表顺序存储和链式存储的相对于各种操作的效率、优缺点以及时间复杂度进行了详细的比较。而顺序表一般可用数组进行表示,若要进行随机查找操作用顺序表更好,若有大量的插入删除操作则选择可用指针表示的 ...
分类:
其他好文 时间:
2019-03-18 01:17:13
阅读次数:
136
一、对本章内容的小结: 本章主要讲述了线性表的定义、特点、表示及实现,同时也说明了顺序表与链表之间的异同,让我们对顺序表和链表有了更深入的认识。学习本章知识后,我们 理解了线性表的基本性质。顺序表可以用数组来表示,可以随机存取元素,但是是静态分配内存空间;链表可用指针来表示,动态分配内存空间,但存取 ...
分类:
其他好文 时间:
2019-03-18 01:05:33
阅读次数:
166
一. 本章内容小结 (a).初始化:Status InitList(SqList &L) {//构造一个空的顺序表L L.elem=new ElemType[MAXSIAZE];//为顺序表分配一个大小为MAXSIZE的数组空间 if(!L.elem) exit (OVERFLOW);//存储分配失 ...
分类:
其他好文 时间:
2019-03-17 23:46:22
阅读次数:
259
1.出现new 动态申请空间时,要想通过调用函数改变主函数的变量值时必须用引用,不论是否为指针,因为动态申请空间时被调用函数会另外申请一个空间来存储内容而非用主函数的相应变量所指向的空间。2.算法对数据量较大时显得尤为重要,求交集那题就是因为我算法不太好而数据量大于10000时运行超时,因此还需要加 ...
分类:
其他好文 时间:
2019-03-17 23:28:58
阅读次数:
216
写在前面的话:直接从第5章跳到了第7章数据结构的趣题,原因是前面的数学趣题做久了,会觉得稍许疲倦,所以想“变个口味”,以后数学趣题和数据结构混合着练习。 1. 题目要求 编写一个函数,实现顺序表的就地逆置,也就是说利用原表的存储空间,将顺序表(a1,a2,a3,...,an)逆置为(an,an-1, ...
分类:
编程语言 时间:
2019-03-17 22:57:20
阅读次数:
177
第2章学习小结 1.1.线性表的定义和实现 线性表可以用顺序存储和链式存储两种存贮结构实现。它们的表示分别为顺序表和链式表。 顺序表的基本操作如初始化,插入,查询,删除等的介绍也分别计算了这些操作的时间复杂度。与链式表的操作进行比较。 1.2 两者的比较 线性表优点:可以用不连续的空间存贮数据,充分 ...
分类:
其他好文 时间:
2019-03-17 21:22:25
阅读次数:
157
数据结构第二章的学习结束了,了解了顺序表,单链表的建立,插入,删除,查找的算法,以及对它们时间复杂度,空间复杂度的分析。学会区分头指针,头结点和首元结点。 前插法,后插法创建单链表,相比之下,我觉得后插法比较好理解。双向链表就是那个表示被处理结点的前驱的后继(p->prior->next),结点的后 ...
分类:
其他好文 时间:
2019-03-17 10:37:40
阅读次数:
157
在数据结构这门课中,数据的逻辑结构会包括线性结构和非线性结构,线性表就是线性结构的一种。根据不同的存储结构,线性表可以分为顺序表和链表。链表包括单链表、循环链表、双向链表。下面是顺序表和单链表实现的不同点的比较。 (一)初始化 顺序表:为顺序表分配一个大小确定的数组空间,空表时长度为0; 链表:构造 ...
分类:
其他好文 时间:
2019-03-16 23:24:12
阅读次数:
202
第二章内容小结 上图为本章内容的思维导图,从上图中可以看出本章所学知识。线性表中的顺序表由于之前学习过,所以比较好理解,并且也可以较为熟练地应用。但是对于单链表,就没有顺序表那么好理解、掌握,我觉得学习起来有点困难,如果要使得单链表完成一定的功能,就必须掌握好每一条语句,每一条语句之间又有着相互的关 ...
分类:
其他好文 时间:
2019-03-16 20:53:29
阅读次数:
161