2023年计算机二级vf公共基础知识.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2023年计算机二级vf公共基础知识.doc》由会员分享,可在线阅读,更多相关《2023年计算机二级vf公共基础知识.doc(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章 数据构造与算法通过对某些考生调查以及对近年模仿真题总结分析,笔试某些经常考察是算法复杂度、数据构造概念、栈、二叉树遍历、二分法查找,读者应对此某些进行重点学习。具体重点学习知识点:1算法概念、算法时间复杂度及空间复杂度概念2数据构造定义、数据逻辑构造及物理构造定义3栈定义及其运算、线性链表存储方式4树与二叉树概念、二叉树基本性质、完全二叉树概念、二叉树遍历5二分查找法6冒泡排序法1.1算法考点1 算法基本概念考试链接:考点1在笔试考试中考核几率为30%,重要是以填空题形式浮现,分值为2分,此考点为识记内容,读者还应当理解算法中对数据基本运算。计算机解题过程事实上是在实行某种算法,这种算
2、法称为计算机算法。1算法基本特性:可行性、拟定性、有穷性、拥有足够情报。2算法基本要素:(1)算法中对数据运算和操作一种算法由两种基本要素构成:一是对数据对象运算和操作;二是算法控制构造。在普通计算机系统中,基本运算和操作有如下4类:算术运算、逻辑运算、关系运算和数据传播。(2)算法控制构造:算法中各操作之间执行顺序称为算法控制构造。描述算法工具普通有老式流程图、N-S构造化流程图、算法描述语言等。一种算法普通都可以用顺序、选取、循环3种基本控制构造组合而成。考点2 算法复杂度考试链接:考点2在笔试考试中,是一种经常考察内容,在笔试考试中浮现几率为70%,重要是以选取形式浮现,分值为2分,此考
3、点为重点识记内容,读者还应当识记算法时间复杂度及空间复杂度概念。1.算法时间复杂度算法时间复杂度是指执行算法所需要计算工作量。同一种算法用不同语言实现,或者用不同编译程序进行编译,或者在不同计算机上运营,效率均不同。这表白使用绝对时间单位衡量算法效率是不适当。撇开这些与计算机硬件、软件关于因素,可以认为一种特定算法运营工作量大小,只依赖于问题规模(通惯用整数n表达),它是问题规模函数。即算法工作量=f(n)2.算法空间复杂度算法空间复杂度是指执行这个算法所需要内存空间。一种算法所占用存储空间涉及算法程序所占空间、输入初始数据所占存储空间以及算法执行过程中所需要额外空间。其中额外空间涉及算法程序
4、执行过程中工作单元以及某种数据构造所需要附加存储空间。假如额外空间量相对于问题规模来说是常数,则称该算法是原地工作。在许多实际问题中,为了减少算法所占存储空间,普通采用压缩存储技术,以便尽量减少不必要额外空间。 疑难解答:算法工作量用什么来计算?算法工作量用算法所执行基本运算次数来计算,而算法所执行基本运算次数是问题规模函数,即算法工作量=f(n),其中n是问题规模。1.2数据构造基本概念考点3 数据构造定义考试链接:考点3在笔试考试中,是一种经常考察内容,在笔试考试中浮现几率为70%,重要是以选取形式浮现,分值为2分,此考点为识记内容,读者还应当识记数据逻辑构造和存储构造概念。数据构造作为计
5、算机一门学科,重要研究和讨论如下三个方面:(1)数据集合中个数据元素之间所固有逻辑关系,即数据逻辑构造;(2)在对数据元素进行解决时,各数据元素在计算机中存储关系,即数据存储构造;(3)对各种数据构造进行运算。数据:是对客观事物符号表达,在计算机科学中是指所有能输入到计算机中并被计算机程序解决符号总称。数据元素:是数据基本单位,在计算机程序中普通作为一种整体进行考虑和解决。数据对象:是性质相似数据元素集合,是数据一种子集。数据逻辑构造是对数据元素之间逻辑关系描述,它可以用一种数据元素集合和定义在此集合中若干关系来表达。数据逻辑构造有两个要素:一是数据元素集合,普通记为D;二是D上关系,它反映了
6、数据元素之间先后件关系,普通记为R。一种数据构造可以表达成B=(D,R)其中B表达数据构造。为了反映D中各数据元素之间先后件关系,普通用二元组来表达。数据逻辑构造在计算机存储空间中存储形式称为数据存储构造(也称数据物理构造)。由于数据元素在计算机存储空间中位置关系也许与逻辑关系不同,因而,为了表达存储在计算机存储空间中各数据元素之间逻辑关系(即先后件关系),在数据存储构造中,不仅要存储各数据元素信息,还需要存储各数据元素之间先后件关系信息。一种数据逻辑构造依照需要可以表达成各种存储构造,惯用存储构造有顺序、链接、索引等存储构造。而采用不同存储构造,其数据解决效率是不同。因而,在进行数据解决时,
7、选取适当存储构造是很重要。考点4 线性构造与非线性构造考试链接:考点4在笔试考试中,虽然说不是考试经常考察内容,但读者还是对此考点有所理解,在笔试考试中浮现几率为30%,重要是以填空题浮现形式浮现,分值为2分,此考点为识记内容。依照数据构造中各数据元素之间先后件关系复杂限度,普通将数据构造分为两大类型:线性构造与非线性构造。假如一种非空数据构造满足下列两个条件:(1)有且只有一种根结点;(2)每一种结点最多有一种前件,也最多有一种后件。则称该数据构造为线性构造。线性构造又称线性表。在一种线性构造中插入或删除任何一种结点后还应是线性构造。假如一种数据构造不是线性构造,则称之为非线性构造。 疑难解
8、答:空数据构造是线性构造还是非线性构造?一种空数据构造究竟是属于线性构造还是属于非线性构造,这要依照具体状况来拟定。假如对该数据构造算法是按线性构造规则来解决,则属于线性构造;否则属于非线性构造。1.3栈及线性链表考点5 栈及其基本运算考试链接:考点5在笔试考试中,是一种必考内容,在笔试考试中浮现几率为100%,重要是以选取形式浮现,分值为2分,此考点为重点掌握内容,读者应当掌握栈运算 。1栈基本概念栈是限定只在一端进行插入与删除线性表,普通称插入、删除这一端为栈顶,另一端为栈底。当表中没有元素时称为空栈。栈顶元素总是后被插入元素,从而也是最先被删除元素;栈底元素总是最先被插入元素,从而也是最
9、后才干被删除元素。栈是按照先进后出或后进先出原则组织数据。2栈顺序存储及其运算用一维数组S(1m)作为栈顺序存储空间,其中m为最大容量。在栈顺序存储空间S(1m)中,S(bottom)为栈底元素,S(top)为栈顶元素。top=0表达栈空;top=m表达栈满。栈基本运算有三种:入栈、退栈与读栈顶元素。(1)入栈运算:入栈运算是指在栈顶位置插入一种新元素。一方面将栈顶指针加一(即top加1),然后将新元素插入到栈顶指针指向位置。当栈顶指针已经指向存储空间最后一种位置时,阐明栈空间已满,不也许再进行入栈操作。这种状况称为栈上溢错误。(2)退栈运算:退栈是指取出栈顶元素并赋给一种指定变量。一方面将栈
10、顶元素(栈顶指针指向元素)赋给一种指定变量,然后将栈顶指针减一(即top减1)。当栈顶指针为0时,阐明栈空,不可进行退栈操作。这种状况称为栈下溢错误。(3)读栈顶元素:读栈顶元素是指将栈顶元素赋给一种指定变量。这个运算不删除栈顶元素,只是将它赋给一种变量,因而栈顶指针不会变化。当栈顶指针为0时,阐明栈空,读不到栈顶元素。小技巧:栈是按照先进后出或后进先出原则组织数据,但是出栈方式有各种选取,在考题中经常考察各种不同出栈方式。考点6 线性链表基本概念考试链接:考点6在笔试考试中浮现几率为30%,重要是以选取形式浮现,分值为2分,此考点为识记内容。重点识记结点构成。在链式存储方式中,规定每个结点由
11、两某些构成:一某些用于存储数据元素值,称为数据域,另一某些用于存储指针,称为指针域。其中指针用于指向该结点前一种或后一种结点(即前件或后件)。链式存储方式既可用于表达线性构造,也可用于表达非线性构造。(1)线性链表线性表链式存储构造称为线性链表。在某些应用中,对线性链表中每个结点设立两个指针,一种称为左指针,用以指向其前件结点;另一种称为右指针,用以指向其后件结点。这样表称为双向链表。(2)带链栈栈也是线性表,也可以采用链式存储构造。带链栈可以用来收集计算机存储空间中所有空闲存储结点,这种带链栈称为可运用栈。 疑难解答:在链式构造中,存储空间位置关系与逻辑关系是什么?在链式存储构造中,存储数据
12、构造存储空间可以不连续,各数据结点存储顺序与数据元素之间逻辑关系可以不一致,而数据元素之间逻辑关系是由指针域来拟定。1.4树与二叉树考点7 树与二叉树及其基本性质考试链接:考点7在笔试考试中,是一种必考内容,在笔试考试中浮现几率为100%,重要是以选取形式浮现,有时也有出当前填空题中,分值为2分,此考点为重点掌握内容。重点识记树及二叉树性质。误区警示:满二叉树也是完全二叉树,而完全二叉树普通不是满二叉树。应当注意两者区别。1、树基本概念树(tree)是一种简朴非线性构造。在树构造中,每一种结点只有一种前件,称为父结点,没有前件结点只有一种,称为树根结点。每一种结点可以有各种后件,它们称为该结点
13、子结点。没有后件结点称为叶子结点。在树构造中,一种结点所拥有后件个数称为该结点度。叶子结点度为0。在树中,所有结点中最大度称为树度。2、二叉树及其基本性质(1)二叉树定义二叉树是一种很有用非线性构造,具有如下两个特点:非空二叉树只有一种根结点;每一种结点最多有两棵子树,且分别称为该结点左子树和右子树。由以上特点可以看出,在二叉树中,每一种结点度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树构造中每一种结点度可以是任意。此外,二叉树中每个结点子树被明显地分为左子树和右子树。在二叉树中,一种结点可以只有左子树而没有右子树,也可以只有右子树而没有左子树。当一种结点既没有左子树也没有右子树时
14、,该结点即为叶子结点。(2)二叉树基本性质二叉树具有如下几种性质:性质1:在二叉树第k层上,最多有2k-1(k1)个结点;性质2:深度为m二叉树最多有2m-1个结点;性质3:在任意一棵二叉树中,度为0结点(即叶子结点)总是比度为2结点多一种。性质4:具有n个结点二叉树,其深度至少为log2n+1,其中log2n表达取log2n整数某些。小技巧:在二叉树遍历中,无论是前序遍历,中序遍历还是后序遍历,二叉树叶子结点先后顺序都是不变。3、满二叉树与完全二叉树满二叉树是指这样一种二叉树:除最后一层外,每一层上所有结点均有两个子结点。在满二叉树中,每一层上结点数都达成最大值,即在满二叉树第k层上有2k-
15、1个结点,且深度为m满二叉树有2m1个结点。完全二叉树是指这样二叉树:除最后一层外,每一层上结点数均达成最大值;在最后一层上只缺少右边若干结点。对于完全二叉树来说,叶子结点只也许在层次最大两层上浮现:对于任何一种结点,若其右分支下子孙结点最大层次为p,则其左分支下子孙结点最大层次或为p,或为p+1。完全二叉树具有如下两个性质:性质5:具有n个结点完全二叉树深度为log2n+1。性质6:设完全二叉树共有n个结点。假如从根结点开始,按层次(每一层从左到右)用自然数1,2,n给结点进行编号,则对于编号为k(k=1,2,n)结点有如下结论:若k=1,则该结点为根结点,它没有父结点;若k1,则该结点父结
16、点编号为INT(k/2)。若2kn,则编号为k结点左子结点编号为2k;否则该结点无左子结点(显然也没有右子结点)。若2k+1n,则编号为k结点右子结点编号为2k+1;否则该结点无右子结点。考点8 二叉树遍历考试链接:考点8在笔试考试中考核几率为30%,分值为2分,读者应当纯熟掌握各种遍历具体算法,能由两种遍历成果推导另一种遍历成果。在遍历二叉树过程中,普通先遍历左子树,再遍历右子树。在先左后右原则下,依照访问根结点顺序,二叉树遍历分为三类:前序遍历、中序遍历和后序遍历。(1)前序遍历:先访问根结点、然后遍历左子树,最后遍历右子树;并且,在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后
17、遍历右子树。(2)中序遍历:先遍历左子树、然后访问根结点,最后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。(3)后序遍历:先遍历左子树、然后遍历右子树,最后访问根结点;并且,在遍历左、右子树时,仍然先遍历左子树,然后遍历右子树,最后访问根结点。 疑难解答:树与二叉树不同之处是什么?在二叉树中,每一种结点度最大为2,即所有子树(左子树或右子树)也均为二叉树,而树构造中每一种结点度可以是任意。1.5查找技术考点9 顺序查找考试链接:考点9在笔试考试中考核几率在30%,普通浮现选取题中,分值为2分,读者应当具体掌握顺序查找算法。查找是指在一种给定数据构造中
18、查找某个指定元素。从线性表第一种元素开始,依次将线性表中元素与被查找元素相比较,若相等则表达查找成功;若线性表中所有元素都与被查找元素进行了比较但都不相等,则表达查找失败。在下列两种状况下也只能采用顺序查找:(1)假如线性表为无序表,则不管是顺序存储构造还是链式存储构造,只能用顺序查找。(2)虽然是有序线性表,假如采用链式存储构造,也只能用顺序查找。考点10 二分法查找考试链接:考点10在笔试考试中考核几率为30%,普通浮现填空题中,分值为2分,考核比较多查找比较次数,读者应当具体掌握二分查找法算法。二分法只合用于顺序存储,按非递减排列有序表,其办法如下:设有序线性表长度为n,被查找元素为i,
19、(1)将i与线性表中间项进行比较;(2)若i与中间项值相等,则查找成功;(3)若i不大于中间项,则在线性表前半某些以相似办法查找;(4)若i不不大于中间项,则在线性表后半某些以相似办法查找。 疑难解答:二分查找法合用于哪种状况?二分查找法只合用于顺序存储有序表。在此所说有序表是指线性表中元素按值非递减排列(即从小到大,但允许相邻元素值相等)。这个过程始终进行到查找成功或子表长度为0为止。对于长度为n有序线性表,在最坏状况下,二分查找只需要比较log2n次。1.6排序技术考点11 互换类排序法考试链接:考点11属于比较难内容,普通以选取题形式考察,考核几率为30%,分值约为2分,读者应当纯熟掌握
20、几种排序算法基本过程。冒泡排序法和迅速排序法都属于互换类排序法。(1)冒泡排序法一方面,从表头开始往后扫描线性表,逐次比较相邻两个元素大小,若前面元素不不大于背面元素,则将它们互换,不断地将两个相邻元素中大者往后移动,最后最大者到了线性表最后。然后,从后到前扫描剩余线性表,逐次比较相邻两个元素大小,若背面元素不大于前面元素,则将它们互换,不断地将两个相邻元素中小者往前移动,最后最小者到了线性表最前面。对剩余线性表反复上述过程,直到剩余线性表变空为止,此时已经排好序。在最坏状况下,冒泡排序需要比较次数为n(n1)/2。(2)迅速排序法它基本思想是:任取待排序序列中某个元素作为基准(普通取第一种元
21、素),通过一趟排序,将待排元素分为左右两个子序列,左子序列元素排序码均不大于或等于基准元素排序码,右子序列排序码则不不大于基准元素排序码,然后分别对两个子序列继续进行排序,直至整个序列有序。 疑难解答:冒泡排序和迅速排序平均执行时间分别是多少?冒泡排序法平均执行时间是O(n2),而迅速排序法平均执行时间是O(nlog2n)。1.7 例题详解一、选取题【例1】算法时间复杂度取决于_。(考点2)A)问题规模B)待解决数据初态C)问题难度D)A)和B)解析:算法时间复杂度不仅与问题规模关于,在同一种问题规模下,并且与输入数据关于。即与输入数据所有也许取值范畴、输入各种数据或数据集概率关于。答案:D)
22、【例2】在数据构造中,从逻辑上可以把数据构造提成_。(考点3)A)内部构造和外部构造B)线性构造和非线性构造C)紧凑构造和非紧凑构造D)动态构造和静态构造解析:逻辑构造反映数据元素之间逻辑关系,线性构造表达数据元素之间为一对一关系,非线性构造表达数据元素之间为一对多或者多对一关系,因此答案为B)。答案:B)【例3】如下_不是栈基本运算。(考点5)A)判断栈与否为素空B)将栈置为空栈C)删除栈顶元素D)删除栈底元素解析:栈基本运算有:入栈,出栈(删除栈顶元素),初始化、置空、判断栈与否为空或满、提取栈顶元素等,对栈操作都是在栈顶进行。答案:D)【例4】链表不具有特点是_。(考点6)A)可随机访问
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 计算机 二级 vf 公共 基础知识
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内