2012年3月全国计算机等级考试二级公共基础知识讲义_第1页
2012年3月全国计算机等级考试二级公共基础知识讲义_第2页
2012年3月全国计算机等级考试二级公共基础知识讲义_第3页
2012年3月全国计算机等级考试二级公共基础知识讲义_第4页
2012年3月全国计算机等级考试二级公共基础知识讲义_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,2012年3月计算机等级考试 二级公共基础知识培训 MUC 公共计算机教学部,2,二级Access考试介绍,一、考试方式1笔试:90 分钟,满分100 分,其中含公共基础知识部分30分 2上机操作:90 分钟,满分100 分 二、笔试题型及分值(根据考试大纲及往年试题) 1选择题70 分(每小题2分,共3 5题)2填空题30 分(每空2 分,共15题) 三、上机操作1基本操作(30 分)2简单应用(40 分)3综合应用(30 分),3,我们的目标,通过二级考试,4,基础知识部分:30分,设有10道选择题和5道填空题,5,第一章 数据结构与算法,1.1 算法 1.2 数据结构的基本概念 1.

2、3 线性表及其顺序存储结构 1.4 栈和队列 1.5 线性链表 1.6 树与二叉树 1.7 查找技术 1.8 排序技术,6,数据结构与算法历年试题分数分布,7,11 算法,1.1.1 算法的基本概念 算法:是指解题方案的准确而完整的描述。 算法不等于程序,也不等于计算机方法,程序的编制不可能优于算法的设计。 算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。特征包括: (1) 可行性(effectiveness):针对实际问题而设计的算法,执行后能够得到满意的结果。 (2) 确定性(definiteness):算法中的每一个步骤都必须有

3、明确的定义,不允许有模棱两可的解释和多义性。 (3) 有穷性(finiteness):算法必须的有限时间内做完,即算法必须能在执行有限个步骤之后终止。 (4) 拥有足够的情报:要使算法有效必须为算法提供足够的情报。当算法拥有足够的情报时,此算法才是有效的;当提供的情报不够时,算法可能无效。 综上所述,算法是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,同时是明确的,此顺序将在有限的次数后终止。,8,11 算法,2.算法的基本要素: 算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。 指令系统:一个计算机系统能执行的所有指令的集合。 基本运算和操作包括:算术运算、逻辑运算

4、、关系运算、数据传输。 算法的控制结构:顺序结构、选择结构、循环结构。 算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。,9,1.1.2 算法复杂度,算法的复杂度主要包括时间复杂度和空间复杂度。 1.时间复杂度:指执行算法所需要的计算工作量 或(算法在执行过程中所需基本运算的执行次数) 2. 空间复杂度:执行这个算法所需要的内存空间,10,算法的历年考题,2004.9 (1)下面叙述正确的是 A)算法的执行效率与数据的存储结构无关 B)算法的空间复杂度是指算法程序中指令(或语句)的条数 C)算法的有穷性是指算法必须能在执行有限个步骤之后终止 D)以上三种描述都不对 (1)算

5、法的复杂度主要包括_复杂度和空间复杂度。 2005.4 (5)问题处理方案的正确而完整的描述称为_。 2005.9 (2)算法复杂度主要包括时间复杂度和_复杂度。,11,算法的历年考题,2006.9 (7)下列叙述中正确的是 A)一个算法的空间复杂度大,则其时间复杂度也必定大 B)一个算法的空间复杂度大,则其时间复杂度必定小 C)一个算法的时间复杂度大,则其空间复杂度必定小 D)上述三种说法都不对 2007.4 (1)下列叙述中正确的是 A)算法的效率只与问题的规模有关,而与数据的存储结构无关 B)算法的时间复杂度是指执行算法所需要的计算工作量 C)数据的逻辑结构与存储结构是一一对应的 D)算

6、法的时间复杂度与空间复杂度一定相关 2008.4 (1)算法的有穷性是指 A)算法程序的运行时间是有限的 B) 算法程序所处理的数据量是有限的 C)算法程序的长度是有限的 D)算法只能被有限的用户使用,12,1.2 数据结构的基本概念,利用计算机进行数据处理是计算机应用的一个重要领域。在进行数据处理时,实现需要处理的数据元素一般很多,而这些大量的数据元素都需要存放在计算机中,因此,大量的数据元素在计算机中如何组织,以便提高数据处理的效率,并且节省计算机的存储空间,这是进行数据处理的关键问题。,13,1.2 数据结构的基本概念,数据结构作为计算机的一门学科,主要研究和讨论以下三个方面的问题。 (

7、1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构; (2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构; (3)对各种数据结构进行的运算。,14,1.2.1 什么是数据结构,数据结构是指相互有关联的数据元素的集合。 更通俗地说,数据结构是指带有结构的数据元素的集合。在此,所谓结构实际上就是指数据元素之间的前后件关系。 由上所述,一个数据结构应包含以下两方面的信息: 1)表示数据元素的信息; 2)表示各数据元素之间的前后件关系。,15,数据的逻辑结构和存储结构,数据的逻辑结构:是指反映数据元素之间逻辑关系的数据结构。 数据的逻辑结构在计算机存储空间中的存放形

8、式称为数据的存储结构(也称数据的物理结构) 常用的存储结构有顺序、链接、索引等。 采用不同的存储结构,其数据处理的效率是不同的。,16,1.2.2 数据结构的图形表示,在数据结构中,没有前件的结点称为根结点;没有后件的结点称为终端结点(也称为叶子结点),其他称为内部结点。,插入和删除是对数据结构的两种基本运算。此外对数据结构的运算还有查找、分类、合并、分解、复制和修改等。,17,1.2.3 线性结构与非线性结构,线性结构条件: 1)有且只有一个根结点; 2)每一个结点最多有一个前件,也最多有一个后件。 3)在一个线性结构中插入或删除任何一个结点后还应该是线性结构。 非线性结构:不满足线性结构条

9、件的数据结构。,18,NCRE考题,2004.9 (2)以下数据结构中不属于线性数据结构的是 A)队列 B)线性表 C)二叉树 D)栈 (2)数据的逻辑结构在计算机存储空间中的存放形式称为数据的_。 2005.4 (1)数据的存储结构是指 A)存储在外存中的数据 B)数据所占的存储空间量 C)数据在计算机中的顺序存储方式 D)数据的逻辑结构在计算机中的表示,19,NCRE考题,2005.9 (4)下列叙述中正确的是 A)一个逻辑数据结构只能有一种存储结构 B)数据的逻辑结构属于线性结构,存储结构属于非线性结构 C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 D)一个

10、逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率 2007.9 (5)下列叙述中正确的是 A)程序执行的效率与数据的存储结构密切相关 B)程序执行的效率只取决于程序的控制结构 C)程序执行的效率只取决于所处理的数据量 D)以上三种说法都不对,20,1.3线性表及其顺序存储结构,1.3.1 线性表的基本概念 线性表是最简单、最常用的一种数据结构 线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。 在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。 非空线性表的结构特征: (1)且只有一个根结点a1,它

11、无前件; (2)有且只有一个终端结点an,它无后件; (3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。,21,1.3.2 线性表的顺序存储结构,在计算机中存放线性表,一种最简单的方法是顺序存储,也称为顺序分配。 线性表的顺序存储结构具有以下两个基本特点: 1)线性表中所有元素的所占的存储空间是连续的; 2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。 ai的存储地址为:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)为第一个元素的地址,k代表每个元素占的字节数。 例:一个矢量第一个元素的存储

12、地址是100,每个元素的长度为2,则第5个元素的地址是 。,22,1.3.3 线性表的插入运算,在i的位置上插入x,23,1.3.4线性表的删除运算,(a)删除ai前 (b)删除ai后,24,1.4 栈和队列,25,1.4.1栈及其基本运算,1定义 栈(Stack)是一种只允许在一端进行插入和删除的线性表,它是一种操作受限的线性表。在表中只允许进行插入和删除的一端称为栈顶(top),另一端称为栈底(bottom)。栈的插入操作通常称为入栈(push),而栈的删除操作则称为出栈或退栈(pop)。当栈中无数据元素时,称为空栈。 栈按照“先进后出”(FILO)或“后进先出”(LIFO)组织数据,栈具

13、有记忆作用。,26,2.栈的顺序存储及其运算,栈的基本运算: (1)插入元素称为入栈运算; (2)删除元素称为退栈运算; (3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。,27,1.4.2 队列及其基本运算,1.什么是队列 队列(Queue)是一种只允许在一端进行插入,而在另一端进行删除的线性表,它是一种操作受限的线性表。在表中只允许进行插入的一端称为队尾(rear),只允许进行删除的一端称为队头(front)。队列的插入操作通常称为入队列或进队列,而队列的删除操作则称为出队列或退队列。当队列中无数据元素时,称为空队列。 根据队列的定义可知,队头元素总是最先进队列,也总是最先出

14、队列;队尾元素总是最后进队列,因而也是最后出队列。这种表是按照先进先出(FIFO,First In First Out)的原则组织数据的,因此,队列也被称为“先进先出”表。,28,队列示意图,29,2.循环队列及其运算,在实际应用中,队列的顺序存储结构一般采用循环队列的形式。,30,循环队列,循环队列,就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用,因此它仍然是线性结构。循环队列有队头指针和队尾指针,它队列中元素的个数是由队头指针和队尾指针共同决定的。为了能区分队满还是队列空,通常需要增加一个标志S。队列空的条件为S=0,队列满的条件为S=1,rear=f

15、ront。,31,历年考题栈,2005.4 (2)下列关于栈的描述中错误的是 A)栈是先进后出的线性表 B)栈只能顺序存储 C)栈具有记忆作用 D)对栈的插入与删除操作中,不需要改变栈底指针 2005.9 (3)下列关于栈的描述正确的是 A)在栈中只能插入元素而不能删除元素 B)在栈中只能删除元素而不能插入元素 C)栈是特殊的线性表,只能在一端插入或删除元素 D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素,32,历年考题栈,2006.4 (4)按照“后进先出”原则组织数据的数据结构是 A)队列 B)栈 C)双向链表 D)二叉树 2006.9 (4)按“先进后出”原则组织数据的数据

16、结构是_。 2008.4 下列关于栈的叙述正确的是 A)栈按“先进先出”组织数据 B) 栈按“先进后出”组织数据 C)只能在栈底插入数据 D)不能删除数据,33,2008.9,(1)一个栈的初始状态为空,现将元素1、2、3、4、5、A、B、C、D、E入栈,然后再依次出栈,则元素出栈的顺序是 A)12345ABCDE B)EDCBA54321 C)ABCDE123456 D)54321EDCBA,34,思考题,35,历年考题队列,2005.9 (5)数据结构分为逻辑结构和存储结构,循环队列属于_结构。 2006.9 (5)数据结构分为线性结构和非线性结构,带链的队列属于_。 2007.4 (5)

17、下列对队列的叙述正确的是 A)队列属于非线性表 B)队列按“先进后出”原则组织数据 C)队列在队尾删除数据 D)队列按“先进先出”原则组织数据,36,历年考题队列,2007.9 (3)线性表的存储结构主要分为顺序存储结构和链式存储结构。队列是一种特殊的线形表,循环队列是队列的【3】存储结构。 2008.4 (3)设某循环队列的容量为50,头指针front=5(指向队头元素的前一位置),尾指针rear=29(指向队尾元素),则该循环队列中共有 【3】 个元素。,37,2008.9,(2)下列叙述中正确的是 A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B)在循环队列中,只需要队头

18、指针就能反映队列中元素的动态变化 C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化 D)循环队列中元素的个数是由队头指针和队尾指针共同决定的,38,1.5 线性链表,1.5.1 线性链表的基本概念 线性表的链式存储结构称为线性链表。 数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。 结点由两部分组成: (1)用于存储数据元素值,称为数据域; (2)用于存放指针,称为指针域,用于指向前一个或后一个结点。 在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。

19、链式存储方式既可用于表示线性结构,也可用于表示非线性结构。,39,40,线性表中存储结点的结构,41,1.5.2 线性链表的基本运算,插入,42,1.5.2 线性链表的基本运算,删除,43,1.5.3 循环链表及其基本运算,前面所讨论的线性链表中,其插入与删除的运算虽然比较方便,但还存在一个问题。在运算过程中,对于空表和对一个结点的处理必须单独考虑,使空表与非空表的运算不统一。为了克服线性表的这个缺点,可以采用另外一种链接方式,即循环链表(Circular Linked List)。循环链表是另一种形式的链式存储结构。它是将单链表的表中最后一个结点指针指向链表的表头结点,整个链表形成一个环,这

20、样从表中任一结点出发都可找到表中其他的结点。,44,循环链表,循环链表具有以下两个特点:(1)在循环链表中增加了一个表头结点,其数据域为任意或者根据需要来设置,指针域指向线性表的第一个元素的结点。循环链表的头指针指向表头结点。(2)循环链表中最后一个结点的指针域不是空,而是指向表头结点。即在循环链表中所有结点的指针构成了一个环状链。在循环链表中,只要指出表中任何一个结点的位置,就可以从它出发访问到表中其他所有的结点,而线性单链表做不到这点。 由于在循环链表中设置了一个表头结点,因此在任何情况下,循环链表中至少有一个结点存在,从而使空表和非空表的运算统一。,45,历年考题,2005.4 (5)下

21、列对于线性链表的描述中正确的是 A)存储空间不一定是连续,且各元素的存储顺序是任意的 B)存储空间不一定是连续,且前件与元素一定存储在后件元素的前面 C)存储空间必须连续,且前件元素一定存储在后件元素的前面 D)存储空间必须连续,且各元素的存储顺序是任意的,46,2008.9,(4)下列叙述中正确的是 A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 C)顺序存储结构能存储有序表,链式存储结构不能存储有序表 D)链式存储结构比顺序结构节省存储空间,47,1.6 树与二叉树,1.6.1 树的基本概念 树是一种简单的非线性结构,所有元素之间具有明显的层次特性。 在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。 在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。,48,1.6.2 二叉树及其基本性质,二叉树的特点: (1)非空二叉树只有一个根结点; (2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。,49,二叉树的基本性质:,(1)在二叉

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论