131-9488-3786

您现在的位置是: 首页 > 真题资料 > 备考辅导 > 二级 > 2023年下半年计算机二级《数据结构与算法》基础考点知识二 > 正文

2023年下半年计算机二级《数据结构与算法》基础考点知识二

整理编辑:计算机等级考试网  发布时间:2023-07-27 14:42:32  阅读量:

2023年下半年计算机二级《数据结构与算法》基础考点知识二


2023年下半年计算机二级《数据结构与算法》基础考点知识二(图1)


【考点7】线性链表


线性链表是线性表的链式存储结构,数据结构中的每一个结点对应于一个存储单元,这种存诸单元称为存储结点,简称结点。结点由两部分组成:


(1)用于存储数据元系值,称为数据域;


(2) 用于存放指针,称为指针域,用于指向前一个或后一个结点。


在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。链式存储方式既可用于表示线性结构,也可用于表示非线性结构。线性单链表中,HEAD 称为头指针,HEAD=NULL(或0)称为空表。


2023年下半年计算机二级《数据结构与算法》基础考点知识二(图2)


线性链表的基本运算:查找、插入、删除。


【考点 8】栈


1、栈的基本概念


栈是一种特殊的线性表,只允许在表的一端进行插入和删除的线性表;插入,删除的一端为栈顶,另一端为栈底;当表中没有元素时为空栈。栈是一种后进先出(或先进后出 Last In First Out)的线性表。栈具有记忆功能。栈的实例:火车调度,子弹夹。


2、栈的存储结构


顺序存储结构:用一组地址连续的存储单元即一维数组来存储:链式存储:用线性链表来存储;


3、栈的基本运算


(1)入栈运算,在栈顶位置插入元素;


(2)退栈运算,删除元素(取出栈顶元素并赋给一个指定的变量);


(3)读栈顶元素,将栈顶元素赋给一个指定的变量,此时指针无变化。


【考点 9】队列


1.队列的基本概念


队列是一种特殊的线性表,只允许在表的一端插入,在另一端删除,允许插入的一端是队尾(rear),允许删除的一端为队头(front);当表中没有元素是空队列:队列是一种先进先出的线性表。(FIFO)


2、队列的存储结构


顺序存储:一维数组。


链式存储:线性链表。


3、队列的运算:


(1)入队运算:从队尾插入一个元素;(2)退队算:从队删除一个元素。


4、队列的顺序存储结构一般采用循环队列的形式。循环队列 s=0 表示队列为空;s=1 且front=rear表示队满。


5、计算循环队列的元素个数:“尾指针减头指针”,若为负数,再加其容量即可。


【考点10】树的基本概念


树是一种非线性结构,是n个结点的有限集。当n=0时为空树,n>0时为非空树。结点的度:结点所拥有的子树的个数。


叶子结点:度为0的结点。


分支结点:除叶子结点以外的结点。


结点的层次:根结点在第一层,同一层上左右结点的子结点在下一层。


树的深度:所处层次最大的那个结点的层次。


树的度:树中所有结点的度的最大值。


【考点11】二叉树及其基本性质


1、二叉树的概念


二叉树是一种特殊的树形结构,每个结点最多只有两棵子树,且有左右之分不能万换,因此,二叉树有五种不同的形态。


2、二叉树的性质


性质1在二叉树的第k层上,最多有2k-1(k≥1)个结点。


性质2深度为m的二叉树最多有2m-1个结点。


性质3在任意一棵二叉树中,度为0的结点(叶子结点)总是比度为2的结点多一个。


性质4具有n个结点的二叉树,其深度不小于[logn]+1,其中[logn]表示为log2n的整数部分。


【考点12】满二叉树与完全二叉树


满二叉树:除最后一层外,每一层上的所有结点都有两个子结点。在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第k层上有2k-1个结点,且深度为m的满二叉树有2m-1个结点。


完全二叉树是指这样的二叉树:除最后一层外,每一层上的结点数均达到最大值;在最后一层上只缺少右边的若干结点。


满二叉树是完全二叉树,而完全二叉树一般不是满二叉树。


【考点13】完全二叉树的性质


性质1具有n个结点的完全二叉树的深度为[logzn]+1。


性质2完全二叉树中度为1的结点数为0或1.


2023年下半年计算机二级《数据结构与算法》基础考点知识二(图3)


1、前序遍历:先访问根结点、然后遍历左子树,最后遍历右子树:并且,在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。前序遍历多5可得:ABCDFHEG。


2、中序遍历:先遍历左子树、然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。中序遍历图5可得:BAFHDCGE。


3、后序遍历:先遍历左子树、然后遍历右子树,最后访问根结点:并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。后序遍历图5可得:BHEDGECA。


【考点15】顺序查找


顺序查找是从表的一端开始,依次扫描表中的各个元素,并与所要否找的数进行比较。在下列两种情况下也只能采用顺序查找:


(1)如果线性表为无序表,则不管是顺序存储结构还是链式存储结构,只能用顺序查找。


(2)即使是有序线性表,如果采用链式存储结构,也只能用顺序查找。


【考点16】二分查找


二分查找的条件:(1)用顺序存储结构(2)线性表是有序表。


对于长度为n的有序线性表,在最坏情况下,二分法查找只需比较 logzn 次,而顺序查找需要比较n次。


【考点17】排序


1、交换排序


(1)冒泡排序法,在最坏的情况下,冒泡排序需要比较次数为n(n-1)/2。


(2)快速排序法 ,在最坏的情况下,快速排序需要比较次数为n(n-1)/2。


2、插入类排序法:


(1)简单插入排序法,最坏情况需要n(n-1)/2次比较:


(2)希尔排序法,最坏情况需要 0(n15)次比较。(大写O是算法复杂度的表示方法)


3、选择类排序法:


(1)简单选择排序法,最坏情况需要 n(n-1/2次比较:


(2)堆排序法,最坏情况需要O(nlog2n)次比较。


相比以上几种(除希尔排序法外),堆排序法的时间复杂度最小。


本文标签:计算机等级考试二级2023年下半年计算机二级《数据结构与算法》基础考点知识二

转载请注明:文章转载自(http://www.jsjdj.net

本文地址:http://www.jsjdj.net/erji_bk/2993.html

计算机等级微信刷题助手
扫码进入微信刷题助手

解锁即可开始刷题
并加入考生交流群

计算机等级微信公众号
扫码关注微信公众号

第一时间获取
计算机等级考试考试资讯

《计算机等级考试网》免责声明:

1、因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:812379481@qq.com。