2010年计算机二级C语言编程公共基础知识.pdf
《2010年计算机二级C语言编程公共基础知识.pdf》由会员分享,可在线阅读,更多相关《2010年计算机二级C语言编程公共基础知识.pdf(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 特别说明特别说明 此资料来自百度文库(http:/ 此文档原地址来自 感谢您的支持 抱米花 http:/ h t t p:/w e n k u.b a i d u.c o m/v i e w/97a 5a 9b b f d 0a 79563c 1e 7263.h t m l第一章据构与算法经部分考生的查以及近年真的总分析,笔部分经常考查的是算法复度、据构的概念、二叉的遍、二分法查找,者此部分行重点学。重点学知点:1算法的概念、算法间复度及空间复度的概念2据构的定义、据构及物理构的定义3的定义及其运算、性表的存方式4与二叉的概念、二叉的基本性、完全二叉的概念、二叉的遍5二分查找法6冒泡排序法1
2、.1算法考点1算法的基本概念考接:考点1在笔考中考核的几率30%,主要是以填空的形式出,分值2分,此考点容,者了解算法中据的基本运算。算机解的程实际上是在实施某种算法,种算法算机算法。1算法的基本特征:可行性、确定性、有性、拥有足够的情。2算法的基本要素:(1)算法中据的运算和操作一个算法由两种基本要素成:一是据象的运算和操作;二是算法的控制构。在一般的算机系统中,基本的运算和操作有以下4类:算运算、运算、系运算和据输。(2)算法的控制构:算法中各操作之间的行序算法的控制构。描述算法的工具通常有统流程、N-S构化流程、算法描述言等。一个算法一般都可以用序、循3种基本控制构合而成。考点2算法复度
3、考接:考点2在笔考中,是一个经常考查的容,在笔考中出的几率70%,主要是以的形式出,分值2分,此考点重点容,者算法间复度及空间复度的概念。1.算法的间复度算法的间复度是指行算法所需要的算工作量。同一个算法用不同的言实,或者用不同的程序行,或者在不同的算机上运行,效率均不同。表明使用的间位衡量算法的效率是不合适的。撇些与算机硬件、件有的因素,可以一个特定算法运行工作量的大小,只依于的模(通常用整n表示),它是模的函。即算法的工作量=f(n)2.算法的空间复度算法的空间复度是指行个算法所需要的存空间。一个算法所占用的存空间包括算法程序所占的空间、输入的初始据所占的存空间以及算法行程中所需要的外空间
4、。其中外空间包括算法程序行程中的工作元以及某种据构所需要的附加存空间。如果外空间量相于模是常,算法是原地工作的。在多实际中,了减少算法所占的存空间,通常采用存技,以便量减少不必要的外空间。疑解答:算法的工作量用什么算?算法的工作量用算法所行的基本运算次算,而算法所行的基本运算次是模的函,即算法的工作量=f(n),其中n是的模。1.2据构的基本概念考点3据构的定义考接:考点3在笔考中,是一个经常考查的容,在笔考中出的几率70%,主要是以的形式出,分值2分,此考点容,者据的构和存构的概念。据构作算机的一门学科,主要研究和以下三个方面:(1)据集合中个据元素之间所固有的系,即据的构;(2)在据元素行
5、处理,各据元素在算机中的存系,即据的存构;(3)各种据构行的运算。据:是客事物的符号表示,在算机科学中是指所有能输入到算机中并被算机程序处理的符号的总。据元素:是据的基本位,在算机程序中通常作一个整体行考和处理。据象:是性相同的据元素的集合,是据的一个子集。据的构是据元素之间的系的描述,它可以用一个据元素的集合和定义在此集合中的若干系表示。据的构有两个要素:一是据元素的集合,通常D;二是D上的系,它反映了据元素之间的前后件系,通常R。一个据构可以表示成B=(D,R)其中B表示据构。了反映D中各据元素之间的前后件系,一般用二元表示。据的构在算机存空间中的存放形式据的存构(也据的物理构)。由于据元
6、素在算机存空间中的位置系可能与系不同,因此,了表示存放在算机存空间中的各据元素之间的系(即前后件系),在据的存构中,不要存放各据元素的信息,需要存放各据元素之间的前后件系的信息。一种据的构根据需要可以表示成多种存构,常用的存构有序、接、索引等存构。而采用不同的存构,其据处理的效率是不同的。因此,在行据处理,合适的存构是很重要的。考点4性构与非性构考接:考点4在笔考中,然不是考经常考查的容,但者是此考点有所了解,在笔考中出的几率30%,主要是以填空出的形式出,分值2分,此考点容。根据据构中各据元素之间前后件系的复程度,一般据构分两大类型:性构与非性构。如果一个非空的据构足下列两个条件:(1)有且
7、只有一个根点;(2)每一个点最多有一个前件,也最多有一个后件。据构性构。性构又性表。在一个性构中插入或删除任何一个点后是性构。如果一个据构不是性构,之非性构。疑解答:空的据构是性构是非性构?一个空的据构究竟是属于性构是属于非性构,要根据具体情况确定。如果据构的算法是按性构的处理的,属于性构;否属于非性构。1.3及性表考点5及其基本运算考接:考点5在笔考中,是一个必考的容,在笔考中出的几率100%,主要是以的形式出,分值2分,此考点重点掌握容,者掌握的运算。1的基本概念是限定只在一端行插入与删除的性表,通常插入、删除的一端,另一端底。表中有元素空。元素总是后被插入的元素,从而也是最先被删除的元素
8、;底元素总是最先被插入的元素,从而也是最后才能被删除的元素。是按照先后出或后先出的原织据的。2的序存及其运算用一S(1m)作的序存空间,其中m最大容量。在的序存空间S(1m)中,S(b o t t o m)底元素,S(t o p)元素。t o p=0表示空;t o p=m表示。的基本运算有三种:入、退与元素。(1)入运算:入运算是指在位置插入一个新元素。首先指加一(即t o p加1),然后新元素插入到指指向的位置。指已经指向存空间的最后一个位置,明空间已,不可能再行入操作。种情况上溢。(2)退运算:退是指取出元素并一个指定的变量。首先元素(指指向的元素)一个指定的变量,然后指减一(即t o p
9、减1)。指0,明空,不可行退操作。种情况的下溢。(3)元素:元素是指元素一个指定的变量。个运算不删除元素,只是它一个变量,因此指不会改变。指0,明空,不到元素。小技巧:是按照先后出或后先出的原织据,但是出方式有多种,在考中经常考查各种不同的出方式。考点6性表的基本概念考接:考点6在笔考中出的几率30%,主要是以的形式出,分值2分,此考点容。重点点的成。在式存方式中,要求每个点由两部分成:一部分用于存放据元素值,据域,另一部分用于存放指,指域。其中指用于指向点的前一个或后一个点(即前件或后件)。式存方式既可用于表示性构,也可用于表示非性构。(1)性表性表的式存构性表。在某些用中,性表中的每个点设
10、置两个指,一个左指,用以指向其前件点;另一个右指,用以指向其后件点。样的表双向表。(2)的也是性表,也可以采用式存构。的可以用收集算机存空间中所有空的存点,种的可利用。疑解答:在式构中,存空间位置系与系是什么?在式存构中,存据构的存空间可以不,各据点的存序与据元素之间的系可以不一致,而据元素之间的系是由指域确定的。1.4与二叉考点7与二叉及其基本性考接:考点7在笔考中,是一个必考的容,在笔考中出的几率100%,主要是以的形式出,有也有出在填空中,分值2分,此考点重点掌握容。重点及二叉的性。警示:二叉也是完全二叉,而完全二叉一般不是二叉。注意二者的。1、的基本概念(t r e e)是一种的非性构
11、。在构中,每一个点只有一个前件,父点,有前件的点只有一个,的根点。每一个点可以有多个后件,它点的子点。有后件的点叶子点。在构中,一个点所拥有的后件个点的度。叶子点的度0。在中,所有点中的最大的度的度。2、二叉及其基本性(1)二叉的定义二叉是一种很有用的非性构,具有以下两个特点:非空二叉只有一个根点;每一个点最多有两棵子,且分点的左子和右子。由以上特点可以看出,在二叉中,每一个点的度最大2,即所有子(左子或右子)也均二叉,而构中的每一个点的度可以是任意的。另外,二叉中的每个点的子被明地分左子和右子。在二叉中,一个点可以只有左子而有右子,也可以只有右子而有左子。一个点既有左子也有右子,点即叶子点。
12、(2)二叉的基本性二叉具有以下几个性:性1:在二叉的第k上,最多有2k-1(k1)个点;性2:深度m的二叉最多有2m-1个点;性3:在任意一棵二叉中,度0的点(即叶子点)总是比度2的点多一个。性4:具有n个点的二叉,其深度至少l o g 2n+1,其中l o g 2n表示取l o g 2n的整部分。小技巧:在二叉的遍中,无是前序遍,中序遍是后序遍,二叉的叶子点的先后序都是不变的。3、二叉与完全二叉二叉是指样的一种二叉:除最后一外,每一上的所有点都有两个子点。在二叉中,每一上的点都达到最大值,即在二叉的第k上有2k-1个点,且深度m的二叉有2m1个点。完全二叉是指样的二叉:除最后一外,每一上的点
13、均达到最大值;在最后一上只缺少右边的若干点。于完全二叉,叶子点只可能在次最大的两上出:于任何一个点,若其右分支下的子点的最大次p,其左分支下的子点的最大次或p,或p+1。完全二叉具有以下两个性:性5:具有n个点的完全二叉的深度l o g 2n+1。性6:设完全二叉共有n个点。如果从根点始,按次(每一从左到右)用自然1,2,n点行号,于号k(k=1,2,n)的点有以下:若k=1,点根点,它有父点;若k 1,点的父点号INT(k/2)。若2kn,号k的点的左子点号2k;否点无左子点(然也有右子点)。若2k+1n,号k的点的右子点号2k+1;否点无右子点。考点8二叉的遍考接:考点8在笔考中考核几率3
14、0%,分值2分,者熟掌握各种遍的具体算法,能由两种遍的果推另一种遍的果。在遍二叉的程中,一般先遍左子,再遍右子。在先左后右的原下,根据根点的次序,二叉的遍分三类:前序遍、中序遍和后序遍。(1)前序遍:先根点、然后遍左子,最后遍右子;并且,在遍左、右子,仍然先根点,然后遍左子,最后遍右子。(2)中序遍:先遍左子、然后根点,最后遍右子;并且,在遍左、右子,仍然先遍左子,然后根点,最后遍右子。(3)后序遍:先遍左子、然后遍右子,最后根点;并且,在遍左、右子,仍然先遍左子,然后遍右子,最后根点。疑解答:与二叉的不同之处是什么?在二叉中,每一个点的度最大2,即所有子(左子或右子)也均二叉,而构中的每一个
15、点的度可以是任意的。1.5查找技考点9序查找考接:考点9在笔考中考核几率在30%,一般出中,分值2分,者具体掌握序查找的算法。查找是指在一个定的据构中查找某个指定的元素。从性表的第一个元素始,依次性表中的元素与被查找的元素相比,若相等表示查找成功;若性表中所有的元素都与被查找元素行了比但都不相等,表示查找失。在下列两种情况下也只能采用序查找:(1)如果性表无序表,不管是序存构是式存构,只能用序查找。(2)即使是有序性表,如果采用式存构,也只能用序查找。考点10二分法查找考接:考点10在笔考中考核几率30%,一般出填空中,分值2分,考核比多查找的比次,者具体掌握二分查找法的算法。二分法只适用于序
16、存的,按非递减排列的有序表,其方法如下:设有序性表的长度n,被查找的元素i,(1)i与性表的中间行比;(2)若i与中间的值相等,查找成功;(3)若i小于中间,在性表的前半部分以相同的方法查找;(4)若i大于中间,在性表的后半部分以相同的方法查找。疑解答:二分查找法适用于哪种情况?二分查找法只适用于序存的有序表。在此所的有序表是指性表中的元素按值非递减排列(即从小到大,但允相邻元素值相等)。个程一直行到查找成功或子表长度0止。于长度n的有序性表,在最坏情况下,二分查找只需要比l o g 2n次。1.6排序技考点11交类排序法考接:考点11属于比的容,一般以的形式考查,考核几率30%,分值2分,者
17、熟掌握几种排序算法的基本程。冒泡排序法和快速排序法都属于交类排序法。(1)冒泡排序法首先,从表头始往后描性表,逐次比相邻两个元素的大小,若前面的元素大于后面的元素,它互,不地两个相邻元素中的大者往后移动,最后最大者到了性表的最后。然后,从后到前描剩下的性表,逐次比相邻两个元素的大小,若后面的元素小于前面的元素,它互,不地两个相邻元素中的小者往前移动,最后最小者到了性表的最前面。剩下的性表重复上述程,直到剩下的性表变空止,此已经排好序。在最坏的情况下,冒泡排序需要比次n(n1)/2。(2)快速排序法它的基本思想是:任取待排序序列中的某个元素作基准(一般取第一个元素),通一趟排序,待排元素分左右两
18、个子序列,左子序列元素的排序均小于或等于基准元素的排序,右子序列的排序大于基准元素的排序,然后分两个子序列行排序,直至整个序列有序。疑解答:冒泡排序和快速排序的平均行间分是多少?冒泡排序法的平均行间是O(n 2),而快速排序法的平均行间是O(n l o g 2n)。1.7例解一、【例1】算法的间复度取决于_。(考点2)A)的模B)待处理的据的初C)的度D)A)和B)解析:算法的间复度不与的模有,在同一个模下,而且与输入据有。即与输入据所有的可能取值范、输入各种据或据集的概率有。答案:D)【例2】在据构中,从上可以把据构分成_。(考点3)A)部构和外部构B)性构和非性构C)凑构和非凑构D)动构和
19、构解析:构反映据元素之间的系,性构表示据元素之间一一的系,非性构表示据元素之间一多或者多一的系,所以答案B)。答案:B)【例3】以下_不是的基本运算。(考点5)A)判是否素空B)置空C)删除元素D)删除底元素解析:的基本运算有:入,出(删除元素),初始化、置空、判是否空或、提取元素等,的操作都是在行的。答案:D)【例4】表不具备的特点是_。(考点6)A)可随机任意一个点B)插入和删除不需要移动任何元素C)不必事先估存空间D)所需空间与其长度成正比解析:序表可以随机任意一个点,而表必从第一个据点出发,逐一查找每个点。所以答案A)。答案:A)【例5】已知某二叉的后序遍序列是DACBE,中序遍序列是
20、DEBAC,它的前序遍序列是_。(考点8)A)ACBED B)DEABC C)DECAB D)EDBAC解析:后序遍的序是左子右子根点;中序遍序是左子根点右子;前序遍序是根点左子右子。根据各种遍算法,不得出前序遍序列是EDBAC。所以答案D)。答案:D)【例6】设有一个已按各元素的值排好序的性表(长度大于2),定的值k,分用序查找法和二分查找法查找一个与k相等的元素,比的次分是s和b,在查找不成功的情况下,s和b的系是_。(考点9)A)s=b B)s b C)s l o g 2n+1。答案:B)【例7】在快速排序程中,每次划分,被划分的表(或子表)分成左、右两个子表,考两个子表,下列一定正确的
21、是_。(考点11)A)左、右两个子表都已各自排好序B)左边子表中的元素都不大于右边子表中的元素C)左边子表的长度小于右边子表的长度D)左、右两个子表中元素的平均值相等解析:快速排序基本思想是:任取待排序表中的某个元素作基准(一般取第一个元素),通一趟排序,待排元素分左右两个子表,左子表元素的排序均小于或等于基准元素的排序,右子表的排序大于基准元素的排序,然后分两个子表行排序,直至整个表有序。答案:B)二、填空【例1】处理方案的正确而完整的描述_。(考点1)解析:算机解的程实际上是在实施某种算法,种算法算机算法。答案:算法【例2】一个空的据构是按性构处理的,属于_。(考点4)解析:一个空的据构是
22、性构或是非性构,要根据具体情况而定。如果据构的运算是按性构处理的,属于性构,否属于非性构。答案:性构【例3】设T的度4,其中度1、2、3和4的点的个分4、2、1、1,T中叶子点的个_。(考点7)解析:根据的性:的点等于所有点的度与的点个乘之和加1。因此的点14223141116。叶子点目等于点总减去度不0的点之和,即16(4211)8。答案:8【例4】二分法查找的存构限于_且是有序的。(考点10)解析:二分查找,也折半查找,它是一种高效率的查找方法。但二分查找有条件限制:要求表必用序存构,且表中元素必按字有序(升序或降序均可)。答案:序存构*公共基知总第一章据构与算法1.1算法算法:是指解方案
23、的准确而完整的描述。算法不等于程序,也不等算机方法,程序的制不可能优于算法的设。算法的基本特征:是一地定义运算序的,每一个都是有效的,是明确的,此序在有限的次下止。特征包括:(1)可行性;(2)确定性,算法中每一步都必有明确定义,不充有模棱两可的解,不允有多义性;(3)有性,算法必能在有限的间做完,即能在行有限个步后止,包括合理的行间的含义;(4)拥有足够的情。算法的基本要素:一是据象的运算和操作;二是算法的控制构。指令系统:一个算机系统能行的所有指令的集合。基本运算和操作包括:算运算、运算、系运算、据输。算法的控制构:序构、构、循构。算法基本设方法:列法、法、递推、递、减斗递推技、回溯法。算
24、法复度:算法间复度和算法空间复度。算法间复度是指行算法所需要的算工作量。算法空间复度是指行个算法所需要的存空间。1.2据构的基本基本概念据构研究的三个方面:(1)据集合中各据元素之间所固有的系,即据的构;(2)在据行处理,各据元素在算机中的存系,即据的存构;(3)各种据构行的运算。据构是指相互有联的据元素的集合。据的构包含:(1)表示据元素的信息;(2)表示各据元素之间的前后件系。据的存构有序、接、索引等。性构条件:(1)有且只有一个根点;(2)每一个点最多有一个前件,也最多有一个后件。非性构:不足性构条件的据构。13性表及其序存构性表由一据元素构成,据元素的位置只取决于自己的序号,元素之间的
25、相位置是性的。在复性表中,由若干据元素成的据元素,而由多个构成的性表又文件。非空性表的构特征:(1)且只有一个根点a 1,它无前件;(2)有且只有一个端点a n,它无后件;(3)除根点与端点外,其他所有点有且只有一个前件,也有且只有一个后件。点个n性表的长度,n=0,空表。性表的序存构具有以下两个基本特点:(1)性表中所有元素的所占的存空间是的;(2)性表中各据元素在存空间中是按序依次存放的。a i的存地址:ADR(a i)=ADR(a 1)+(i-1)k,,ADR(a 1)第一个元素的地址,k代表每个元素占的字。序表的运算:插入、删除。(见14-16页)14和列是限定在一端行插入与删除的性表
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2010 计算机 二级 语言 编程 公共 基础知识
限制150内