2019-08-22 文都网校
2020年考研的时间已出来了,很多考生有了更明确的复习目标和复习进度,计算机专业考研的压力还是比较大的,考生也是比较有难度的,对基础要求比较高。下面文都网校考研小编整理的“2020计算机专业考研数据结构知识点”相关文章,希望对大家有所帮助。
2020计算机专业考研数据结构知识点:线性表
1. 深刻理解数据结构的概念,掌握数据结构的“三要素”:逻辑结构、物理(存储)结构及在这种结构上所定义的操作“运算”。
2. 时间复杂度和空间复杂度的定义,常用计算语句频度来估算算法的时间复杂度。
3. 线性表的逻辑结构,是指线性表的数据元素间存在着线性关系。主要是指:除第一及最后一个元素外,每个结点都只有一个前趋和只有一个后继。在顺序存储结构中,元素存储的先后位置反映出这种逻辑关系,而在链式存储结构中,是靠指针来反映这种逻辑关系的。
4. 顺序存储结构用向量(一维数组)表示,给定下标,可以存取相应元素,属于随机存取的存储结构。
5. 线性表的顺序存储方式及其在具体语言环境下的两种不同实现:表空间的静态分配和动态分配。掌握顺序表上实现插入、删除、定位等运算的算法。
6. 尽管“只要知道某结点的指针就可以存取该元素”,但因链表的存取都需要从头指针开始,顺链而行,故链表不属于随机存取结构。要理解头指针、头结点、首元结点和元素结点的差别。头结点是在插入、删除等操作时,为了算法的统一而设立的(若无头结点则在第一元素前插入元素或删除第一元素时,链表的头指针总在变化)。对链表(不包括循环链表)的任何操作,均要从头结点开始,头结点的指针具有标记作用,故头指针往往被称为链表的名字,如链表head是指链表头结点的指针是head。理解循环链表中设置尾指针而不设置头指针的好处。链表操作中应注意不要使链意外“断开”。因此,若在某结点前插入一个元素或删除某元素,必须知道该元素的前驱结点的指针。
7. 链表是本部分学习的重点和难点。重点掌握以下几种常用链表的特点和运算:单链表、循环链表、双向链表、双向循环链表的生成、插入、删除、遍历以及链表的分解和归并等操作。并能够设计出实现线性表其它运算的算法。
8. 从时间复杂度和空间复杂度的角度综合比较线性表在顺序和链式两种存储结构下的特点,即其各自适用的场合。
9.顺序表和链表的比较:
通过对它们的讨论可知它们各有优缺点,顺序存储有三个优点:
(1)方法简单,各种高级语言中都有数组,容易实现。
(2)不用为表示结点间的逻辑关系而增加额外的存储开销。
(3)顺序表具有按元素序号随机访问的特点。
它也有两个缺点:
(1)在顺序表中做插入删除操作时,平均移动大约表中一半的元素,因此对n较大的顺序表效率低。
(2)需要预先分配足够大的存储空间,估计过大,可能会导致顺序表后部大量闲置;预先分配过小,又会造成溢出。 链表的优缺点恰好与顺序表相反。
文都网校考研频道为大家持续 更新考研资料,希望能帮助到大家,同学们可以关注文都考研,这里有你 需要的资料,点击【kaoyan.wenduedu.com】风里、雨里,文都陪伴着你!有问题找文都☞☞☞详情咨询入口 >>>
课程推荐:
主推课程 |
|
2020考研主推产品 |
|
2020考研VIP特训班 | |
2021考研主推产品 |
|
2021考研VIP特训班 |