一、选择题(每小题1分,共40小题,共40分 ) 1.下列叙述中正确的是( )
A.对长度为n 的有序链表进行查找,最坏情况下需要的比较次数为n B.对长度为n 的有序链表进行对分查找,最坏情况下需要的比较次数为(n/ Z) C.对长度为n 的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n) D.对长度为n 的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n) C
【解析】二分法查找只适用于顺序存储的有序表,对于长度为n 的有序线性表,最坏情况只需比较log2n 次
2.算法的时间复杂度是指( )
A.算法的执行时间 B.算法所处理的数据量 C.算法程序中的语句或指令条数 D.算法在执行过程中所需要的基本运算次数 D
【解析】算法的时间复杂度是指算法需要消耗的时间资源
一般来说,计算机算法是问题规模n 的函数f(n), 算法的时间复杂度也因此记做T(n)=O(f(n))因此,问题的规模n 越大,算法执行的时间的增长率与f(n)的增长率正相关,称作渐进时间复杂度(Asymptotic Time Cornplexity)
简单来说就是算法在执行过程中所需要的基本运算次数
3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于系统软件的是( )
A.编辑软件 B.操作系统 C.教务管理系统 D.浏览器 B
【解析】编辑软件和浏览器属于工具软件,教务系统是应用软件
4.软件(程序)调试的任务是( )
A.诊断和改正程序中的错误 B.尽可能多地发现程序中的错误 C.发现并改正程序中的所有错误 D.确定程序中错误的性质 A
【解析】调试的目的是发现错误或导致程序失效的错误原因,并修改程序以修正错误
调试是测试之后的活动 5.数据流程图(DFD 图 )是 ( )
A.软件概要设计的工具 B.软件详细设计的工具 C.结构化方