[评析]
算法的复杂度分时间复杂度和空间复杂度。
时间复杂度:在运行算法时所耗费的时间为f(n)(即 n的函数)。 空间复杂度:实现算法所占用的空间为g(n)(也为n的函数)。 称O(f(n))和O(g(n))为该算法的复杂度。
简单的例子比如常见的顺序结构时间复杂度为O(1),1层循环里面次数为n,时间复杂度就是O(n),2层循环for i=1 to n,for j=1 to n算法时间复杂度为O(n2)(里面为n的平方),复杂度主要用于算法的效率比较与优化,比如排序,查找…
(12) 下列叙述中正确的是______。 A. 线性表是线性结构 B. 栈与队列是非线性结构 C. 线性链表是非线性结构 D. 二叉树是线性结构 (12) [答案]A
[考点]数据结构与算法 [评析]
一棵二叉树的一个结点下面可以有2个子结点,故不是线性结构(通俗地理解,看是否能排成条直线)。 此题与(2)题类似
(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为______。 A. 349 B. 350 C. 255 D. 351 (13) [答案]B
Page 6 of 51
[考点]数据结构与算法 [评析]
完全二叉树:若二叉树中最多只有最下面两层的结点的度可以小于2,并且最下面一层的结点(叶结点)都依次排列在该层最左边的位置上,这样的二叉树为完全二叉树。 比如图:
完全二叉树除叶结点层外的所有结点数(叶结点层以上所有结点数)为奇数,此题中,699是奇数,叶结点层以上的所有结点数为保证是奇数,则叶结点数必是偶数,这样我们可以立即选出答案为B!
如果完全二叉树的叶结点都排满了,则是满二叉树,易得满二叉树的叶结点数是其以上所有层结点数+1比如图:
此题的其实是一棵满二叉树,我们根据以上性质,699+1=700,700/2=350,即叶结点数为350,叶结点层以上所有结点数为350-1=349。 (14) 结构化程序设计主要强调的是______。 A. 程序的规模 B. 程序的易读性 C. 程序的执行效率 D. 程序的可移植性 (14) [答案]B
[考点]程序设计基础 [评析]
又是结构化的问题,何谓结构化? 简单地比如: VB: If...End If C: if..{...}
Pascle: Begin ...End
Page 7 of 51
我们在\结构\的中间写代码,从哪执行到哪结束我们能很快抓住! 此题中重要性为:B>C>D
(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。 A. 概要设计 B. 详细设计 C. 可行性分析 D. 需求分析 (15) [答案]D
[考点]软件工程基础 [评析]
题中所述为需求分析
可行性研究包括经济可行性、技术可行性、操作可行性,即以最小的代价确定系统的规模是否现实
概要设计的任务是确定软件的总体结构、子结构和模块的划分
详细设计的任务是确定每一模块的实现细节,包括数据结构、算法和接口 也许有人这么久了还不知道什么叫系统,什么叫模块。
晕倒,这里罗嗦一下,软件工程中的系统指的整个软件系统,比如QQ的所有东西,我们用的是客户端程序,实际的东西放在腾讯公司的服务器上,主要是数据库,包括在中间的传输过程,这一整个相关的东东都叫做OICQ的系统;什么叫模块,这里不单指如VB里的\标准模块\、\类模块\,也不单指一个窗体或者一个文件,宏观上讲,软件工程中把一种功能或相关功能把它做成一个模块,这个模块有可能是一个过程,有可能是一个函数…从功能角度度量模块内的联系为模块的内聚(一般来说越强越好,不易出错);模块之间的联系为耦合,比如我们编程中常用把一实参的值赋给了函数中的形参,使函数完成某一功能,耦合度越低越好,独立性就强;
何谓独立性?比如我们二级编程都有考到全局变量、局部变量,函数中的局部变量独立性很强,函数外无法访问…
Page 8 of 51
何谓变量?晕~~~~~~~如果这都要说,那你可以不用考二级了。
(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是______。 A. 控制流 B. 加工 C. 数据存储 D. 源和潭 (16) [答案]A
[考点]软件工程基础 [评析]
数据流图用于需求分析阶段,在此阶段我们只考虑大致的数据流流向,而不关心内部具体的处理,以及如何在计算机上实现,不必讨论控制流,我们只关心的:数据流、数据储存、变换/加工(相当于一个黑盒,不关心内部细节)、外部实体,数据流图通俗易懂,因为它远离了计算机,用户(无需懂编程)和软件人员都易接受。
比如一个简单的软件系统逻辑模型:
输入流和输出流即D中的源和潭。
(17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及______。 A. 阶段性报告 B. 需求评审 C. 总结 D. 都不正确 (17) [答案]B
[考点]软件工程基础 [评析]
Page 9 of 51
评审(复审)每阶段都有,把前三个方面说完了,还剩什么呢? 此题需要记一下,至于各名词的解释,顾名即可思义。 (18) 下述关于数据库系统的叙述中正确的是______。 A. 数据库系统减少了数据冗余 B. 数据库系统避免了一切冗余
C. 数据库系统中数据的一致性是指数据类型的一致 D. 数据库系统比文件系统能管理更多的数据 (18) [答案]A
[考点]数据库设计基础 [评析]
关于数据管理技术的三个阶段如下: 1.人工管理阶段 人工管理数据的特点是: (1)数据不保存。
(2)数据无专门软件进行管理。 (3)数据不共享。 (4)数据不具有独立性。 2.文件系统阶段
该阶段的数据管理具有如下特点: (1)数据可以长期保存。
(2)由文件系统管理数据。文件系统管理数据存在如下缺点: (1)数据共享性差,数据冗余度大。 (2)数据独立性差。 3.数据库系统阶段
与人工管理和文件系统阶段相比较,数据库系统阶段具有如下的特点: (1)数据结构化
(2)数据共享性高、冗余度小、易扩充 (3)数据独立性高
Page 10 of 51