第二章:线性表——学习小结
1.本章内容小结:学习到了线性表的两种存储结构:顺序存储结构和链式存储结构。其中顺序存储结构的特点是:逻辑上相邻,物理上也相邻。*同时在顺序表存储长度过大的数据时,需要先申请足够空间。以及顺序表的重要基本操作包括:初始化,取值,插入,删除,查找。
初始化例如:
void InitList(LinkList &a) { a = new LNode;//申请空间 a->next = NULL; }
在顺序表中插入元素的算法实现步骤:
(1)判断插入位置i是否合法;
(2)判断顺序表的存储空间是否已满;
(3)将第n至第i位的元素依次向后移动一个位置,空出第i个位置;
(4)将要插入的新元素e放入第i个位置。
(5)表长+1,插入成功返回OK。
即:
2.完成作业或实践时的心得体会:完完整整把代码打了一遍下来,一遍一遍地debug,从中收获了很多。在这一章练习中,学会了一些严谨的代码逻辑结构:从开始的初始化链表,创建链表到最后要销毁链表以此来释放空间等等一系列的函数。
3.推荐有关书籍:《算法》
- 作者:Robert Sedgewick / Kevin Wayne
- 出版:人民邮电出版社
推荐理由:1.便携:书的大小比普通的书要小一圈,长宽比是一比一,适合放在随身包里阅读。
2.初阶:每一种算法或是数据结构都有海量的图解,非常适合初学者学习理解。
3.应用性强:每章节结尾均有应用一节,讲解此算法/数据结构的实际应用。
4.接下来的目标:多学习!多实践!希望以后有的问题能直接在课堂上及时解决,课后也可以上网了解一些不熟悉的知识点。