A)内部结构和外部结构B)线性结构和非线性结构C)紧凑结构和非紧凑结构D)动态结构和静态结构解析:逻辑结构反映数据元素之间的逻辑关系,线性结构表示数据元素之间为一对一的关系,非线性结构表示数据元素之间为一对多或者多对一的关系,所以答案为B)。答案:B)【例3】以下不是栈的基本运算。(考点5)A)判断栈是否为素空B)将栈置为空栈C)删除栈顶元素D)删除栈底元素解析:栈的基本运算有:入栈,出栈(删除栈顶元素),初始化、置空、判断栈是否为空或满、提取栈顶元素等,对栈的操作都是在栈顶进行的。答案:D)。(考点6)【例4】链表不具备的特点是A)可随机访问任意一个结点B)插入和删除不需要移动任何元素C)不必事先估计存储空间D)所需空间与其长度成正比解析:顺序表可以随机访问任意一个结点,而链表必须从第一个数据结点出发,逐一查找每个结点。所以答案为A)。答案:A)【例5】已知某二叉树的后序遍历序列是DACBE,中序遍历序列是DEBAC,则它的前序遍历序列是。(考点8)A)ACBEDB)DEABCC)DECABD)EDBAC解析:后序遍历的顺序是“左子树一右子树一根结点”;中序遍历顺序是”左子树一根结点一右子树”:前序遍历顺序是”根结点一左子树一右子树”。根据各种遍历算法,不难得出前序遍历序列是EDBAC。所以答案为D)。答案:D)【例6】设有一个已按各元素的值排好序的线性表(长度大于2),对给定的值k,分别用顺序查找法和二分查找法查找一个与k相等的元素,比较的次数分别是s和b,在查找不成功的情况下,s和b的关系是(考点9)A) s=bB) s>bC) s<bD)s≥b解析:对于顺序查找,查找不成功时和给定关键字比较的次数为n+1。二分查找查找不成功的关键字比较次数为[log2n]+1。当n≥2时,显然n+1>[log2n]+1。答案:B)【例7】在快速排序过程中,每次划分,将被划分的表(或子表)分成左、右两个子表,考虑这两个子表,下列结论一定正确的是。(考点11)A)左、右两个子表都已各自排好序B)左边子表中的元素都不大于右边子表中的元素C)左边子表的长度小于右边子表的长度D)左、右两个子表中元素的平均值相等解析:快速排序基本思想是:任取待排序表中的某个元素作为基准(一般取第一个元素),通过一趟排序,将待排元素分为左右两个子表,左子表元素的排序码均小于或等于基准元素的排序码,右子表的排序码则大于基准元素的排序码,然后分别对两个子表继续进行排序,直至整个表有序。答案:B)二、填空题【例1】问题处理方案的正确而完整的描述称为。(考点1)解析:计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。答案:算法【例2】一个空的数据结构是按线性结构处理的,则属于。(考点4)
A)内部结构和外部结构 B)线性结构和非线性结构 C)紧凑结构和非紧凑结构 D)动态结构和静态结构 解析:逻辑结构反映数据元素之间的逻辑关系,线性结构表示数据元素之间为一对一的关系,非线性结 构表示数据元素之间为一对多或者多对一的关系,所以答案为B)。 答案:B) 【例3】以下_不是栈的基本运算。(考点5) A)判断栈是否为素空 B)将栈置为空栈 C)删除栈顶元素 D)删除栈底元素 解析:栈的基本运算有:入栈,出栈(删除栈顶元素),初始化、置空、判断栈是否为空或满、提取栈 顶元素等,对栈的操作都是在栈顶进行的。 答案:D) 【例4】链表不具备的特点是_。(考点6) A)可随机访问任意一个结点 B)插入和删除不需要移动任何元素 C)不必事先估计存储空间 D)所需空间与其长度成正比 解析:顺序表可以随机访问任意一个结点,而链表必须从第一个数据结点出发,逐一查找每个结点。所 以答案为A)。 答案:A) 【例5】已知某二叉树的后序遍历序列是DACBE,中序遍历序列是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<b D)s≥b 解析:对于顺序查找,查找不成功时和给定关键字比较的次数为n+1。二分查找查找不成功的关键字比 较次数为[log2n]+1。当n≥2时,显然n+1>[log2n]+1。 答案:B) 【例7】在快速排序过程中,每次划分,将被划分的表(或子表)分成左、右两个子表,考虑这两个子 表,下列结论一定正确的是_。(考点11) A)左、右两个子表都已各自排好序 B)左边子表中的元素都不大于右边子表中的元素 C) 左边子表的长度小于右边子表的长度 D)左、右两个子表中元素的平均值相等 解析:快速排序基本思想是:任取待排序表中的某个元素作为基准(一般取第一个元素 ),通过一趟排 序,将待排元素分为左右两个子表,左子表元素的排序码均小于或等于基准元素的排序码,右子表的排序码 则大于基准元素的排序码,然后分别对两个子表继续进行排序,直至整个表有序。 答案:B) 二、填空题 【例1】问题处理方案的正确而完整的描述称为_。(考点1) 解析:计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。 答案:算法 【例2】一个空的数据结构是按线性结构处理的,则属于_。(考点4)
解析:一个空的数据结构是线性结构或是非线性结构,要根据具体情况而定。如果对数据结构的运算是按线性结构来处理的,则属于线性结构,否则属于非线性结构。答案:线性结构【例3】设树T的度为4,其中度为1、2、3和4的结点的个数分别为4、2、1、1,则T中叶子结点的个数为。(考点7)解析:根据树的性质:树的结点数等于所有结点的度与对应的结点个数乘积之和加1。因此树的结点数为1×4十2×2十3×1十4×1十1=16。叶子结点数目等于树结点总数减去度不为0的结点数之和,即16一(4十2+1+1)=8。答案:8【例4】二分法查找的存储结构仅限于且是有序的。(考点10)解析:二分查我,也称折半查找,它是一种高效率的查找方法。但二分查找有条件限制:要求表必须用顺序存储结构,且表中元素必须按关键字有序(升序或降序均可)。答案:顺序存储结构第2章程序设计基础经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是结构化程序设计的原则、面向对象方法的基本概念,读者应对此部分进行重点学习。详细重点学习知识点:1.结构化程序设计方法的四个原则2.对象、类、消息、继承的概念、类与实例的区别2.1结构化程序设计考点1结构化程序设计的原则20世纪70年代提出了”结构化程序设计“的思想和方法。结构化程序设计方法引入了工程化思想和结构化思想,使大型软件的开发和编程得到了极大的改善。结构化程序设计方法的主要原则为:自顶向下、逐步求精、模块化和限制使用goto语句。?疑难解答:如何进行自顶向下设计方法?程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标:不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。2.2面向对象的程序设计考点2面向对象方法的基本概念误区警示:当使用"对象“这个术语时,既可以指一个具体的对象,也可以泛指一般的对象,但是当使用"实例"这个术语时,必须是指一个具体的对象。面向对象方法涵盖对象及对象属性与方法、类、继承、多态性几个基本要素。(1)对象通常把对对象的操作也称为方法或服务。属性即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来改变。属性值应该指的是纯粹的数据值,而不能指对象
解析:一个空的数据结构是线性结构或是非线性结构,要根据具体情况而定。如果对数据结构的运算是 按线性结构来处理的,则属于线性结构,否则属于非线性结构。 答案:线性结构 【例3】设树T的度为4,其中度为1、2、3和4的结点的个数分别为4、2、1、1,则T中叶子 结点的个数为_。(考点7) 解析:根据树的性质:树的结点数等于所有结点的度与对应的结点个数乘积之和加1。 因此树的结点数为1×4+2×2+3×1+4×1+1=16。叶子结点数目等于树结点总数减去度不 为0的结点数之和,即16-(4+2+1+1)=8。 答案:8 【例4】二分法查找的存储结构仅限于_且是有序的。(考点10) 解析:二分查找,也称折半查找,它是一种高效率的查找方法。但二分查找有条件限制:要求表必须用 顺序存储结构,且表中元素必须按关键字有序(升序或降序均可)。 答案:顺序存储结构 第2章 程序设计基础 经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是结构化程序设计的原则、 面向对象方法的基本概念,读者应对此部分进行重点学习。 详细重点学习知识点: 1.结构化程序设计方法的四个原则 2.对象、类、消息、继承的概念、类与实例的区别 2.1 结构化程序设计 考点1 结构化程序设计的原则 20世纪70年代提出了"结构化程序设计"的思想和方法。结构化程序设计方法引入了工程化思想和结构化 思想,使大型软件的开发和编程得到了极大的改善。结构化程序设计方法的主要原则为:自顶向下、逐步求 精、模块化和限制使用goto语句。 疑难解答:如何进行自顶向下设计方法? 程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标;不要一开始就过多追求众多的细节,先从 最上层总目标开始设计,逐步使问题具体化。 2.2 面向对象的程序设计 考点2 面向对象方法的基本概念 误区警示: 当使用"对象"这个术语时,既可以指一个具体的对象,也可以泛指一般的对象,但是当使用"实例"这个术语时,必须是指一个 具体的对象。 面向对象方法涵盖对象及对象属性与方法、类、继承、多态性几个基本要素。 (1)对象 通常把对对象的操作也称为方法或服务。 属性即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来改变。属性值应该指 的是纯粹的数据值,而不能指对象