(完整版)样题-程序设计与算法语言科学院遥感应用研究所
考试题09答案
湖南科技大学研究生考试试题参考答案课程名称: 算法设计与分析 课程性质: 学位课(√)、选修课()专业: 计算机应用技术、计算机软件与理论年级: 2009级任课教师: 王志喜 开课学院: 计算机科学与工程出题人: 王志喜 审核人: 学生人数: 20 考试时间:2009至2010学年第1学期1、给出下列函数的上界(或双界)估计并证明结果的正确性。
(10分)(1) 3()8(/2)T n T n n =+(2) ()2(/3)1T n T n =+(3) 3/2()49(/25)log T n T n n n =+ (4) 42520()log .T n n n n =+ (5) 4353()2log 2log n n T n n n n /n =+解:(1)由于2log 83()n n =Q ,所以由Master 定理(Ⅱ)有2log 83()(log )(log )T n n n n n =Q =Q 。
(2)由于3log 20.101()n O n -==,所以由Master 定理(Ⅰ)有3log 2()()T n n =Q 。
(3)由于25log 490.53/2log ()n n n +=W ,而且()()3/23/249/25log /25(49/125)log n n n n £,所以由Master 定理(Ⅲ)有3/2()(log )T n n n =Q 。
(4)因为4lim ()/1n T n n =且4lim /()1n n T n £,所以4()()T n n =Q 。
(5)因为5lim ()/(2)0n n T n n =,所以5()(2)n T n O n =。
2、使用一种程序设计语言描述有序数组的折半搜索算法。
(10分) 解:template <class T> // int BinarySearch(T a[], const T &x, int n) { int left = 0, right = n - 1; while (left <= right) { int middle = (left + right) / 2; if (x == a[middle]) return middle;else if (x> a[middle]) left = middle + 1; else right = middle - 1; } // return - 1; // 未找到x } 3、使用一种程序设计语言或伪代码描述生成最小生成树的Kruskal 算法。
远程研修:《算法与python程序设计》习题答案
远程研修:《算法与python程序设计》习题答案第一讲算法客观题[标准化测试]1、关于算法的描述,以下选项中正确的是:A算法的执行效率与数据的存储结构无关B算法的空间复杂度是指算法程序中指令(或语句)的条数C算法的有穷性是指算法必须能在执行有限个步骤之后终止D以上三种描述都不对【正确答案】: C2、以下选项中,对算法的时间复杂度描述正确的是A算法的时间复杂度是指执行算法程序所需要的时间B算法的时间复杂度是指算法程序的长度C算法的时间复杂度是指算法执行过程中所需要的基本运算次数D算法的时间复杂度是指算法程序中的指令条数【正确答案】: C3、已知n为问题规模,则下面程序段的时间复杂度为。
for i in range(n):for j in range(i+1, n) :s=s+1A O(1)B O(n)C O(n2)D O(log2n)【正确答案】: C4、已知n为问题规模,则下面程序段的时间复杂度为。
i=1while i<=n:i=i*2A O(1)B O(n)C O(n2)D O(log2n)【正确答案】: D5、在算法的流程图描述方法中,表示输入输出的通常是。
A矩形框B棱形框C平行四边形框D圆角矩形框【正确答案】: C第二讲Python批量数据的算法设计客观题1、关于Python的列表类型,以下选项中描述错误的是_______________。
A列表是一个可以修改数据项的序列类型B列表是包含0个或多个对象引用的有序序列C列表的长度不可以变D列表用中括号[ ]表示【正确答案】: C2、下面代码的输出结果是____________。
vlist=list(range(5))print(vlist)A [ 0, 1, 2, 3, 4 ]B 0 1 2 3 4C 0,1,2,3,4D 0;1;2;3;4【正确答案】: A3、Python语言中表达式"4.5"+"5.5"的值为_____________。
计算机应用技术等级证书程序设计与算法考试 选择题 60题
1. 以下哪种数据结构最适合用于实现优先队列?A. 数组B. 链表C. 堆D. 栈2. 在C语言中,以下哪个关键字用于定义常量?A. constB. staticC. volatileD. extern3. 下列哪个排序算法在最坏情况下的时间复杂度为O(n^2)?A. 快速排序B. 归并排序C. 堆排序D. 插入排序4. 以下哪种算法用于解决图的最短路径问题?A. Dijkstra算法B. Kruskal算法C. Prim算法D. 深度优先搜索5. 在Python中,以下哪个语句用于导入模块?A. importB. includeC. requireD. using6. 以下哪个数据结构不是线性数据结构?A. 数组B. 链表C. 树D. 栈7. 在Java中,以下哪个关键字用于实现多态?A. abstractB. finalC. overrideD. interface8. 下列哪个算法用于解决0/1背包问题?A. 贪心算法B. 动态规划C. 回溯算法9. 在SQL中,以下哪个语句用于从表中删除数据?A. DELETEB. DROPC. TRUNCATED. REMOVE10. 以下哪个不是面向对象编程的三大特性之一?A. 封装B. 继承C. 多态D. 抽象11. 在C++中,以下哪个关键字用于定义类?A. classB. structC. typedefD. enum12. 下列哪个算法用于解决最长公共子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法13. 在JavaScript中,以下哪个方法用于将字符串转换为整数?A. parseIntB. parseFloatC. toStringD. toFixed14. 以下哪个数据结构最适合用于实现LRU缓存?A. 数组B. 链表C. 哈希表D. 双向链表15. 在Python中,以下哪个语句用于定义函数?A. defB. functionC. procedureD. method16. 下列哪个算法用于解决最大子数组问题?A. 贪心算法B. 动态规划D. 分治算法17. 在SQL中,以下哪个语句用于创建表?A. CREATEB. INSERTC. UPDATED. DELETE18. 以下哪个不是数据库的三大范式之一?A. 第一范式B. 第二范式C. 第三范式D. 第四范式19. 在Java中,以下哪个关键字用于定义接口?A. classB. interfaceC. abstractD. final20. 下列哪个算法用于解决最小生成树问题?A. Dijkstra算法B. Kruskal算法C. Prim算法D. 深度优先搜索21. 在C语言中,以下哪个关键字用于定义指针?A. pointerB. refC. *D. &22. 下列哪个算法用于解决最长递增子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法23. 在Python中,以下哪个语句用于定义类?A. classB. structC. typedefD. enum24. 以下哪个数据结构不是树形结构?A. 二叉树C. 图D. 堆25. 在Java中,以下哪个关键字用于定义枚举?A. enumB. classC. interfaceD. abstract26. 下列哪个算法用于解决最长公共前缀问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法27. 在SQL中,以下哪个语句用于更新表中的数据?A. UPDATEB. INSERTC. DELETED. SELECT28. 以下哪个不是操作系统的主要功能之一?A. 进程管理B. 内存管理C. 文件管理D. 网络管理29. 在C++中,以下哪个关键字用于定义常量?A. constB. staticC. volatileD. extern30. 下列哪个算法用于解决最长回文子串问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法31. 在Python中,以下哪个语句用于定义列表?A. listB. arrayC. tupleD. set32. 以下哪个数据结构最适合用于实现栈?B. 链表C. 堆D. 队列33. 在Java中,以下哪个关键字用于定义抽象类?A. abstractB. finalC. overrideD. interface34. 下列哪个算法用于解决最长公共子串问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法35. 在SQL中,以下哪个语句用于查询表中的数据?A. SELECTB. INSERTC. UPDATED. DELETE36. 以下哪个不是计算机网络的七层模型之一?A. 物理层B. 数据链路层C. 传输层D. 应用层37. 在C语言中,以下哪个关键字用于定义结构体?A. structB. classC. typedefD. enum38. 下列哪个算法用于解决最长公共子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法39. 在Python中,以下哪个语句用于定义字典?A. dictB. listC. tupleD. set40. 以下哪个数据结构最适合用于实现队列?A. 数组B. 链表C. 堆D. 栈41. 在Java中,以下哪个关键字用于定义最终类?A. finalB. abstractC. overrideD. interface42. 下列哪个算法用于解决最长递增子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法43. 在SQL中,以下哪个语句用于删除表?A. DROPB. DELETEC. TRUNCATED. REMOVE44. 以下哪个不是数据库的事务特性之一?A. 原子性B. 一致性C. 隔离性D. 持久性45. 在C++中,以下哪个关键字用于定义引用?A. refB. *C. &D. pointer46. 下列哪个算法用于解决最长回文子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法47. 在Python中,以下哪个语句用于定义元组?A. tupleB. listC. arrayD. set48. 以下哪个数据结构最适合用于实现哈希表?A. 数组B. 链表C. 堆D. 树49. 在Java中,以下哪个关键字用于定义静态方法?A. staticB. finalC. abstractD. override50. 下列哪个算法用于解决最长公共子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法51. 在SQL中,以下哪个语句用于插入数据到表中?A. INSERTB. UPDATEC. DELETED. SELECT52. 以下哪个不是计算机网络的五层模型之一?A. 物理层B. 数据链路层C. 网络层D. 会话层53. 在C语言中,以下哪个关键字用于定义联合体?A. unionB. structC. typedefD. enum54. 下列哪个算法用于解决最长公共子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法55. 在Python中,以下哪个语句用于定义集合?A. setB. listC. tupleD. dict56. 以下哪个数据结构最适合用于实现堆?A. 数组B. 链表C. 树D. 栈57. 在Java中,以下哪个关键字用于定义静态变量?A. staticB. finalC. abstractD. override58. 下列哪个算法用于解决最长公共子序列问题?A. 贪心算法B. 动态规划C. 回溯算法D. 分治算法59. 在SQL中,以下哪个语句用于查询表中的数据?A. SELECTB. INSERTC. UPDATED. DELETE60. 以下哪个不是计算机网络的七层模型之一?A. 物理层B. 数据链路层C. 传输层D. 应用层答案1. C2. A3. D4. A5. A6. C7. D8. B9. A10. D11. A12. B13. A14. D15. A16. B17. A18. D19. B20. B21. C22. B23. A24. C25. A26. D27. A28. D29. A30. B31. A32. A33. A34. B35. A36. D37. A38. B39. A40. B41. A42. B43. A44. D45. C46. B47. A48. A49. A50. B51. A52. D53. A54. B55. A56. A57. A58. B59. A60. D。
历年算法与程序设计学业水平考试真题(带答案)
历年算法与程序设计学业水平考试真题(带答案)一、选择题1、流程图是描述()的常用方式。
A、程序B、算法C、数据结构D、计算规则2、下面不属于算法描述方式的是()。
A、自然语言B、伪代码C、流程图D、机器语言3、以下运算符中运算优先级最高的是()。
A、+B、^C、>=D、*4、某程序中三个连续语句如下:a=1 b=2 c=b+a 它属于()A、顺序结构B、选择结构C、循环结构D、以上三种都不是5、穷举法的适用范围是()A、一切问题B、解的个数极多的问题C、解的个数有限且可一一列举D、不适合设计算法6、在现实生活中,人工解题的过程一般分为()A、理解分析问题→寻找解题方法→用工具计算→2验证结果B、寻找解题方法→理解分析问题→用工具计算→验证结果C、用工具计算→验证结果→寻找解题方法→理解分析问题D、用工具计算→验证结果→理解分析问题→寻找解题方法7、下列关于算法的特征描述不正确的是()A、有穷性:算法必须在有限步之内结束B、确定性:算法的每一步必须确切的定义C、输入:算法必须至少有一个输入D、输出:算法必须至少有一个输出8、下列哪一个不是用于程序设计的软件()A、BASICB、C语言C、WordD、Pascal9、下列可以作为合作变量名的是()A、a7B、7aC、a-3D、810、编程求1+2+3+........+1000的和,该题设计最适合使用的控制结构为()。
A、顺序结构B、分支结构C、循环结构3D、选择结构11、下列步骤不属于软件开发过程的是()A、任务分析与系统设计B、软件的销售C、代码编写与测试D、软件测试与维护12.以下程序段运行时,语句k=k+1 执行的次数为()次。
k=-10dok=k+1loop while(until)k=0A. 9B. 10C. 11D. 1213.已知x=6, y=5, 则以下运算结果为True 的是()A.Not(x>y) B. (x<5)or(y>6) C.(x>=6)And(y>=5) D. Not(x>4)14.模块化程序设计方法反映了结构化程序设计的()基本思想。
中科院程序设计样题
二、选择题(共 20 分,每题 2 分)
1、下列哪种值赋给指针变量时,可能会出错【 A.地址 B.NULL C.数组名 D.变量名 】 。
2、 对于一个具有 n 个顶点 e 条边的无向图, 若采用邻接表表示, 则表向量的大小为 【 A.n B.n+1 C.n-1 D.n+e
】 。
3、在双向链表中,如果要在指针 p 所指的结点后插入 q 所指的新结点,下面哪个操作序列 是正确的?【 】 A.prlinkllink=q; prlink=q;qllink=p;qrlink=prlink; B.pllinkrlink=q; pllink=q;qrlink=p;qllink=pllink; C.qllink=p; qrlink=prlink;prlinkllink=q;prlink=q; D.qrlink=p; qllink=pllink;pllinkrlink=q;pllink=q;
五、写算法(共 40 分,每题 20 分)
1. 若称正读和反读都相同的字符序列为“回文” ,例如, ‘abba’和‘abcba’是回文, ‘abcde’ 和‘ababab’则不是回文。试写一个算法判断读入的一个以‘@’为结束符的字符序列是否 为“回文” 。 要求: (1)写出算法的基本思想; (2)用熟悉的程序设计语言实现上述算法。 2. 试编写一个算法,给有向无环图 G 中每个顶点赋以一个整数序号,并满足一下条件:若 从顶点 i 至顶点 j 有一条弧,则应使 i<j。 要求: (1)写出算法的基本思想; (2)用熟悉的程序设计语言实现上述算法。
科目名称:程序设计
第2页
共4页
A 55
B 68
C 59
D 28
三.填空题(共 40 分,每空 2 分)
(完整版),算法与数据结构题库及答案,推荐文档
A 问题规模是 n2
B 问题规模与 n2 成正比
C 执行时间等于 n2
D 执行时间与 n2 成正比
2、关于数据结构的描述,不正确的是( )。
A 数据结构相同,对应的存储结构也相同。
B 数据结构涉及数据的逻辑结构、存储结构和施加其上的操作等三个方面。
C 数据结构操作的实现与存储结构有关。
D 定义逻辑结构时可不考虑存储结构。
D O(nlog2n)
28、n 个结点的线索二叉树中,线索的数目是( )。
A n-1
B n+1
C 2n
D 2n-1
29、若数据元素序列{11,12,13,7,8,9,23,4,5}是采用下列排序方法之一得到的第二趟排序
后的结果,则该排序方法只能是( )。
A 插入排序 B 选择排序 C 交换排序 D 归并排序
A. n+1
B. n
C. n-1
11. 一个递归算法必须包括__________。
D. n-2
A. 递归部分 B. 结束条件和递归部分 C. 迭代部分 D. 结束条件和迭代部分
12. 从逻辑上看可以把数据结构分为__________两大类。
第 1 页,共 8 页
A.动态结构、静态结构
B.顺序结构、链式结构
二、填空题
1、算法效率的度量分为 事后测量
和
事前估 两种。
2、算法是一个有穷的指令集,它为解决某一特定任务规定了一个运算序列。它应当具有
输入、输出、确定性、 有穷性
可行性等特性。
3、一个抽象数据类型 ADT 包括
数据操作 和 对象
两个部分。
4、队列的插入操作是在 队尾 进行,删除操作是在 队头
进行。
2023年计算机应用技能竞赛理论试题样题含答案
注: 仅供参照, 题量题型也许会有变化, 例如增长填空题类型等理论类测试样题一、选择题1. 二进制数1011转换成十进制数是()A: 8B: 10C: 11D: 12答案: C2. 最常见旳西文字符编码是()A: BCD码B: ASCⅡ码C: GB2312码D: 格雷码答案: B3. 十进制旳45转换成16进制数是()A: 101101HB: A0HC: 2DHD: 18H答案: C4. 微机总线按性能由高到低依次为()A: ISA.EISA.PCIB: PCI、EISA.ISAC: EISA.ISA.PCID: ISA.PCI、EISA答案: B5. 下列说法中错误旳是()A: CPU是中央处理单元旳简称B: Pentium 233表达主频为233MHz C: CPU自身能为顾客处理多种实际问题D: CPU只能执行预先安排旳指令答案: C6. 单片机和单板机重要用于()。
A: 科学计算B: 图形图象处理C: 工业和家电控制D: 联网答案: C7、“软件”翻译成英文为()A: SaveB: SoftwareC: StateD: Record答案: B8、“存储器”翻译成英文为()A: MediaB: MemoryC: ModemD: Monitor9、内存中每一种单元都被赋予一种惟一旳序号, 称为()。
A: 字节B: 编号C: 地址D: 容量答案: C10、存储一种中文占()个字节A: 1个B: 2个C: 4个D: 8个答案: B11. 我国目前采用旳中文编码是()A: BCD码B: GB2312码C: ASCⅡ码D: 二进制编码答案: B12. 应用软件是指为处理多种实际问题而运用计算机系统软件编制旳多种程序, 下列软件()是应用软件A: CADB: DOSC: WindowsD: BASIC13. 计算机中旳数和信息用()表达A: 二进制B: 十进制C: 八进制D: 十六进制答案: A14. 计算机中旳信息单位1G=()A: 1024KB: 1024MC: 512KD: 256K答案: B15. 下列有关“绿色环境保护电脑”旳重要特点说法不对旳旳是()A: 节省能源B: 保护环境C: 由于机器外观旳颜色为“绿色”D: 符合人体工程学设计答案: C16. 单片机是将()和计算机外围功能单元如存储器、I/0端口、定期/计数器、中断系统等集成在一种芯片上A: CPUB: RTVC: 计算机硬件D: 计算机软件17、Hard disk 是指()A: 软盘B: 硬盘C: 光盘D: 软盘驱动器18、计算机辅助设计简称为()A: CAMB: CAEC: CAID: CAD答案: D19、File 是指()A: 文献B: 设备C: 软盘D: 信息答案: A20、有线电视网旳英文缩写为()A: STMB: ATMC: ISDND: CATV答案: D21. 下列哪个不是计算机中常用旳信息存储单位()B: MBC: GBD: FB答案: D22. 下面()组设备包括: 输入设备、输出设备和存储设备A: 鼠标、CPU、ROMB: 键盘、磁盘、鼠标C: 鼠标、打印机、光盘D: 磁带、打印机、绘图仪答案: C23. 计算机系统由两大部分构成, 即()A: 运算器和控制器B: 主机和显示屏C: 硬件系统和软件系统D: 主机和外设答案: C24. 软件中旳程序语言属于()A: 系统软件B: 应用软件C: 操作系统D: 工具软件答案: A25. CPU每执行一条(), 就完毕一步基本运算和判断A: 软件C: 语句D: 硬件答案: B26. 在微机中, 硬盘属于()A: 外(辅助)存储器B: 输入设备C: 输出设备D: 内存储器答案: A27、Windows 属于()A: 应用软件B: 程序设计软件C: 操作系统软件D: 工具软件答案: C28、计算机中数据旳精度取决于数据旳位数, 称之为()A: 机器字长B: 数据位数C: 字节数D: 数值旳精度答案: A29、一种字节(Byte)共有()位(bit)二进制数A: 16B: 8C: 4D: 1答案: B30、在计算机中, 二进制旳最小单位是()A: BitB: ByteC: KbD: Mb答案: A31. 在Windows 旳“查找”操作中, 假如目前旳文献夹中存在文献WORDPAD.PASSWORD.Microsoft Word, 则在查找名称中输入“WORD”, 就可以找到文献()A: WORDPADB: PASSWORDC: Microsoft WordD: 以上三个文献都也许找到答案: D32. 在Windows 中, 有关文献夹中旳文献说法对旳旳是()A: 容许同一文献夹中旳文献同名, 也容许不一样文献夹中旳文献同名B: 容许同一文献夹中旳文献同名, 但不容许不一样文献夹中旳文献同名C: 不容许同一文献夹中旳文献同名, 但容许不一样文献夹中旳文献同名D:不容许同一文献夹中旳文献同名, 也不容许不一样文献夹中旳文献同名答案: C33.计算机软件是指()A : 程序及文档C : 程序及注释B : 指令系统及文档D : 指令系统及注释答案: A34.顾客想在网上查询WWW信息, 必须安装并运行一种被称为旳软件A.万维网B. 搜索引擎C.浏览器D. 客户端答案: C35. CPU 暂停现行程序而转到中断处理程序称为()A:中断祈求B:中断处理C:中断响应D:中断返回答案: C36.虚拟存储器是把哪两者有机地结合起来使用旳?()A:内存与外存B:内存与高速缓存C:外存与高速缓存D:内存与寄存器答案: A37、Windows XP中, 正常状况下旳热启动措施是。
中科院遥感所12程序设计
中国科学院研究生院2012年招收攻读硕士学位研究生入学统一考试试题科目名称:程序设计考生须知:1.本试卷满分为150分,全部考试时间总计180分钟。
2.所有答案必须写在答题纸上,写在试题纸上或草稿纸上一律无效。
一、判断题(共10分,每小题2分)(1)Floyd算法求两个顶点的最短路径时,path k-1一定是path k的子集。
【】(2)在快速排序、堆排序、归并排序和插入排序中,堆排序所需要的附加存储开销最大。
【】(3)用Prim算法和Kruskal算法分别构造的图的最小生成树不一定相同。
【】(4)在结点数多于1的哈夫曼树中不存在度为1的结点。
【】(5)在长度都为n的有序单链表和顺序表上分别做顺序查找,若查找每个元素的概率相等,则顺序查找表中任一元素的查找成功的平均查找长度相同。
【】二、选择题(共20分,每题2分)1、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储【】。
A.数据的操作方法 B.数据的存取方法C.数据元素之间的关系 D.数据元素的类型2、程序段for ( i=n-1; i>1; i-- )for ( j=1; j<i; j++ )if (A[j]>A[j+1])A[j]与A[j+1]对换;其中n为正整数,则最后一行的语句频度在最坏情况下是【】。
A.O(n) B.O(n2) C.O(n×log2n) D.不直接依赖于n3、在顺序表的动态存储定义中需要包含的数据成员是【】I.数组基址base II.表中元素个数nIII.数组指针*data IV.表的大小maxSizeA.II、III B.I、II、III C.II、III、IV D.全部需要4、对于一个线性表既要能够进行较快速地插入和删除,又要求存储结构能反映数据之间的逻辑关系,则应选用【】A.链式存储方式 B.顺序存储方式C.散列存储方式D.以上均可以5、3个数顺序(依次)进栈,出栈序列有【】种。
2020年信息技术学考算法与程序设计试题整理及解析
2020年信息技术学考算法与程序设计试题整理及解析一、选择题(每题3分)1.下列选项中,不属于计算机程序设计语言的是( C )A.汇编语言B.高级语言C.自然语言D.机器语言解析:计算机程序设计语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。
2. 关于算法的描述,下列选项中正确的是( B )A.算法本身就是一种程序设计语言B.算法的每一步骤必须有确切的含义C.算法的步骤可以是无穷的D.算法必须有输入解析:算法是指解决问题的方法和步骤,一个算法应该具有以下五个重要的特征:1.有穷性(Finiteness):是指算法必须能在执行有限个步骤之后终止。
2.确切性(Definiteness):算法的每一步骤必须有确切的定义。
3.输入项(Input):一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件。
4.输出项(Output):一个算法有一个或多个输出,以反映对输入数据加工后的结果。
没有输出的算法是毫无意义的。
5.可行性(Effectiveness):算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步骤,即每个计算步骤都可以在有限时间内完成(也称之为有效性)。
3. VB程序中“dim n As Integer”这条语句的作用是( A )A.定义一个变量B.定义一个数据输入方法C.定义一个事件过程D.定义一个数据处理方法解析:Dim 是VB中声明变量并分配存储空间的语句。
格式:Dim 变量名 as 数据类型Integer:变量存储为 16位(2 个字节)的数值形式。
string:变长与定长的字符串。
Boolean:存储为 16 位(2 个字节)的数值形式,但只能是 True 或是 False。
Double:(双精度浮点型)变量存储为 IEEE 64 位(8 个字节)浮点数值的形式。
Long:(长整型)变量存储为 32 位(4 个字节)有符号的数值形式等等。
算法和程序设计分析及试题附答案_08-算法和程序设计
选修1:算法与程序设计第一单元算法一、知识内容(一)使用计算机解决问题的一般过程考试要求:对所列知识要知道其内容及含义,并能用自己的语言或动作进行表达、判断和直接运用。
1.一般过程(1)分析问题确定要使用计算机来“做什么”,即确定解题的任务。
(2)寻求解决问题的途径和方法。
(3)用计算机进行处理。
2.确定解决问题的方法及步骤化确定了解决问题的方法后,必须把解决问题的方法步骤化,即用某种方式告诉计算机每个需做什么。
计算机开始计算之前,需把解决问题的程序存储在内存中。
通常一个程序包括指令和数据两部分。
(1)指令部分:指令是对计算机操作类型和操作数地址做出规定的一组符号。
(2)数据部分:计算所需的原始数据、计算的中间结果或最终结果。
3.设计程序时需要考虑的问题(1)数据的存储:计算所需要的原始数据、计算产生的中间结果需要存储在不同的变量中。
(2)计算的过程:把解决问题的方法步骤化,并用计算机能执行的指令来有序地实现对应的步骤。
(3)典型的指令类型有输入指令、输出指令、算术运算指令、逻辑运算指令和控制转移指令。
(二)算法及算法的表示方法考试要求:对所列知识要理解其确切含义及与其它知识的联系,能够用所学的信息技术知识和操作方法解决实际问题,熟练应用信息技术进行信息的处理。
1.算法的特征(1)有穷性。
一个算法必须保证它的执行步骤是有限的,即它是能终止的。
(2)确定性。
算法中的每个步骤必须有确切的含义,不应当有模棱两可的。
(3)能行性。
算法中的每一个步骤都要足够简单,能实际能作的,而且在能在有限的时间内完成。
(4)有0个或多个输入。
(5)有一个或多个输出。
(三)用自然语言、流程图、伪代码表示算法考试要求:对所列知识要理解其确切含义及与其它知识的联系,能够用所学的信息技术知识和操作方法解决实际问题,熟练应用信息技术进行信息的处理。
1.自然语言就像写文章时所列的提纲一样,可以有序地用简洁的自然语言加数学符号来描述算法。
中国科学院计算机研究所计算机编程基础考试试卷
中国科学院计算机研究所计算机编程基础考试试卷一、单选题1. 下列哪个选项是正确的关于计算机编程的?- [ ] A. 计算机编程是指使用计算机软件进行文档编辑- [ ] B. 计算机编程是指使用计算机语言创建程序- [ ] C. 计算机编程是指管理计算机硬件设备- [ ] D. 计算机编程是指进行网络安全管理2. 在Python编程语言中,用于将字符串转换为大写的方法是:- [ ] A. `lower()`- [ ] B. `capitalize()`- [ ] C. `upper()`- [ ] D. `title()`3. 以下哪种数据结构是先进后出的?- [ ] A. 队列- [ ] B. 栈- [ ] C. 链表- [ ] D. 数组二、多选题4. 下列哪些是常见的编程语言?(选择所有正确答案)- [ ] A. Python- [ ] C. Java- [ ] D. CSS5. 以下哪些是常用的控制流语句?(选择所有正确答案)- [ ] A. if语句- [ ] B. for循环- [ ] C. while循环- [ ] D. switch语句三、填空题6. 在Python中,如何打印输出"Hello, World!"?print("Hello, World!")7. 在C++编程中,声明一个名为`age`的整型变量,并赋值为18。
int age = 18;8. 在Java中,如何创建一个名为`myArray`的字符串数组,包含元素"apple"、"banana"和"cherry"?String[] myArray = {"apple", "banana", "cherry"};四、编程题9. 编写一个Python函数`calculate_average`,接收一个整数列表作为参数,计算并返回列表中所有元素的平均值。
(完整版)中科院遥感所考博真题2007年程序设计与算法
2007年遥感所考博《程序设计与算法语言》一. 选择题(每小题2分,共40分)1. int a = 2,则执行完表达式a*=a+=a-=a*a;后,a的值是()。
A) -4;B) 0;C) -8;D) 16;2. 以下程序段中while 循环执行的次数是()。
int k=0;while(k=1)k++;A)无限次;B)有语法错,不能执行C)一次也不执行D)执行1次3. 用来表示一个变量的地址或者表示另一变量的地址的变量是()。
A.函数; B.指针; C.数组; D.结构体;4. 若有说明:int a[][2]={1,2,3,4,5,6,7 }; 则a数组第一维的大小是()A. 2B. 3C. 4D. 无确定值5. 一个栈的输入序列为123…n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()。
A. 不确定B. n-i+1C. iD. n-i6. 假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个存储单元,基地址为10,则LOC[5,5]=()。
A. 808B. 818C. 1010D. 10207. 在任意-棵二叉树中,若终端结点的个数为M,度为2的结点数为8,则M=()。
A.8 B. 9 C.10 D.118. 链表不具备的特点是()。
A)可随机访问任何一个元素;B)无需事先估计存储空间大小;C)插入、删除操作不需要移动元素;D)所需存储空间与线性表长度成正比;9. 连续存储设计时,存储单元的地址()。
A.一定连续 B.一定不连续 C.不一定连续 D.部分连续,部分不连续10. 在右图的流程图中,如果标记为b的运算执行了m次(m>1),那么标记为a的运算的执行次数为()。
A.1;B.m-1;C.m;D.m+l;11. 如下定义:int m =2;int n = m<<3, 则n = ()A.2 B. 8 C. 0 D. 1612. 设栈的输入序列是1,2,3,4,则____不可能是其出栈序列。
2023年中国计算机科学与技术学院算法考试常识题
2023年中国计算机科学与技术学院算法考试常识题一、算法基础知识1. 什么是算法?算法是用来解决问题或执行计算的一系列有序步骤的描述。
2. 算法的属性有哪些?- 正确性:算法必须产生正确的结果。
- 可读性:算法应该易于理解和解释。
- 高效性:算法应该在合理的时间内得出结果。
- 优雅性:算法应该简洁、直观。
3. 算法的时间复杂度和空间复杂度是什么?- 时间复杂度:衡量算法执行时间的度量,通常表示为大O符号。
常见的时间复杂度有O(1)、O(n)、O(log n)等。
- 空间复杂度:衡量算法执行过程中所需的存储空间的度量,通常也表示为大O符号。
二、常见算法思想1. 递归算法是什么?递归算法是一种通过将问题分解为规模较小的相同问题来解决的方法。
它涉及到一个递归函数调用自身的过程。
2. 动态规划算法是什么?动态规划算法是通过将问题分解为更小的子问题来解决的一种方法。
它通常用于求解最优化问题,在每个子问题上进行决策,最终得出整体最优解。
3. 贪心算法是什么?贪心算法是一种通过在每个步骤中选择局部最优解来得到整体最优解的方法。
它不一定能得到最优解,但通常可以得到较好的近似解。
三、常见算法题型1. 排序算法常见的排序算法有冒泡排序、插入排序、选择排序、快速排序、归并排序等。
这些算法都有不同的时间复杂度和适应场景。
2. 查找算法常见的查找算法有线性查找和二分查找。
线性查找逐个检查每个元素直到找到目标元素,二分查找则是基于已排序的列表进行比较。
3. 图算法图算法用于解决图形结构相关的问题,如最短路径问题、最小生成树问题等。
常见的图算法有深度优先搜索(DFS)和广度优先搜索(BFS)。
4. 字符串算法字符串算法用于解决与字符串相关的问题,如字符串匹配、字符串编辑距离等。
常见的字符串算法有KMP算法、Boyer-Moore算法等。
四、总结本文简要介绍了算法的基础知识,包括算法的定义、属性,以及常见算法思想和题型。
了解这些常识题对于计算机科学与技术学院的学生来说是非常重要的。
算法设计与分析第三版王晓东算法实现题部分答案_可复制编辑!
算法实现题3-7 数字三角形问题问题描述:给定一个由n行数字组成的数字三角形,如图所示。
试设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。
编程任务:对于给定的由n行数字组成的数字三角形,编程计算从三角形的顶至底的路径经过的数字和的最大值。
数据输入:有文件input.txt提供输入数据。
文件的第1行是数字三角形的行数n,1n<=100。
接下来的n行是数字三角形各行的数字。
所有数字在0-99之间。
结果输出:程序运行结束时,将计算结果输出到文件output.txt中。
文件第1行中的数是计算出的最大值。
输入文件示例输出文件示例input.txt output.txt5 3073 88 1 02 7 4 44 5 2 6 5源程序:#include "stdio.h"void main(){ int n,triangle[100][100],i,j;//triangle数组用来存储金字塔数值,n表示行数FILE *in,*out;//定义in,out两个文件指针变量in=fopen("input.txt","r");fscanf(in,"%d",&n);//将行数n读入到变量n中for(i=0;i<n;i++)//将各行数值读入到数组triangle中for(j=0;j<=i;j++)fscanf(in,"%d",&triangle[i][j]);for(int row=n-2;row>=0;row--)//从上往下递归计算for(int col=0;col<=row;col++)if(triangle[row+1][col]>triangle[row+1][col+1])triangle[row][col]+=triangle[row+1][col];else triangle[row][col]+=triangle[row+1][col+1];out=fopen("output.txt","w");fprintf(out,"%d",triangle[0][0]);//将最终结果输出到output.txt中}算法实现题4-9 汽车加油问题问题描述:一辆汽车加满油后可行驶nkm。
中科院计算机算法分析与设计_习题1-2_答案
∵ DFN(F)=0,DFNL(F,E),
DFN(F):=num=6; L(F):=num=6; num+:=7; DFN(E)=5≠0,E=E,无操作。
∵ DFN(G)=0,DFNL(G,F),
DFN(G):=num=7; L(G):=num=7; num+:=8; DFN(E)=5≠0,E≠F,L(G)=min (L(G),DFN(E))=5; DFN(F)=6≠0,F=F,无操作。 DFNL(G,F) 结束 L(F):=min (L(F),L(G))=min(6,5)=5 DFNL(F,E)的结束。 L(E):=min (L(E),L(F))=min(1,5)=1 DFNL(E,C) 结束。 L(C):=min (L(C),L(E))=min(3,1)=1 DFNL(C,B) 结束。 L(B):=min (L(B),L(C))=min(2,1)=1 DFNL(B,A) 结束。 L(A):=min (L(A),L(B))=1 因DFN(E)=0,E≠ null,则L(A)=min (L(A),DFN(E))=1
1 m+1 m+1 1 m*(p+1) m*p+m 1 m*p m*p 1 m*p*(n+1) m*p*n+m*p 1 m*p*n m*p*n 1 m*p m*p
2*m*p*n+4*m*p+2*m+1
s/e 表示每次执行该语句所要执行的程序步数,频率是指该语句总的执行次数。
2. 函数MinMax用来查找数组a[0:n-1]中的最大元素和最小元素,以下给 出两个程序。令n为实例特征。试问:在各个程序中,a中元素之间的比较 次数在最坏情况下各是多少?
DFNL(A,null) 结束。
算法分析与研发设计方案测验考试复习题及参考答案
一、简要回答下列问题:1.算法重要特性是什么?2.算法分析的目的是什么?3.算法的时间复杂性与问题的什么因素相关?4.算法的渐进时间复杂性的含义?5.最坏情况下的时间复杂性和平均时间复杂性有什么不同?6.简述二分检索(折半查找)算法的基本过程。
7.背包问题的目标函数和贪心算法最优化量度相同吗?8.采用回溯法求解的问题,其解如何表示?有什么规定?9.回溯法的搜索特点是什么?10.n皇后问题回溯算法的判别函数place的基本流程是什么?11.为什么用分治法设计的算法一般有递归调用?12.为什么要分析最坏情况下的算法时间复杂性?13.简述渐进时间复杂性上界的定义。
14.二分检索算法最多的比较次数?15.快速排序算法最坏情况下需要多少次比较运算?16.贪心算法的基本思想?17.回溯法的解(x1,x2,……x n)的隐约束一般指什么?18.阐述归并排序的分治思路。
19.快速排序的基本思想是什么。
20.什么是直接递归和间接递归?消除递归一般要用到什么数据结构?21.什么是哈密顿环问题?22.用回溯法求解哈密顿环,如何定义判定函数?23.请写出prim算法的基本思想。
二、复杂性分析1、MERGESORT(low,high)if low<high;then mid←(low,high)/2;MERGESORT(low,mid);MERGESORT(mid+1,high);MERGE(low,mid,high);endifend MERGESORT2、procedure S1(P,W,M,X,n)i←1。
a←0while i≤ n doif W(i)>M then return endifa←a+ii←i+1 。
repeatend3.procedure PARTITION(m,p)Integer m,p,i。
global A(m:p-1)v←A(m)。
i←mlooploop i←i+1 until A(i) ≥v repeatloop p←p-1 until A(p) ≤v repeatif i<pthen call INTERCHANGE(A(i),A(p))else exitendifrepeatA(m) ←A(p)。
中国科学院大学2020年招收攻读硕士学位研究生入学统一考试试题-科目名称:《程序设计》
中国科学院大学2020年招收攻读硕士学位研究生入学统一考试试题科目名称:程序设计考生须知:1.本试卷满分为150分,全部考试时间总计180分钟。
2.所有答案必须写在答题纸上,写在试题纸上或草稿纸上一律无效。
一、单项选择题(共30分,每道题3分)1、请阅读下面的C程序,选择程序的输出结果:______#include <stdio.h>int main(){int w[] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};int t=8;t=(w[t]+w[t+5])%16;printf("%d\n",w[t]);return 0;}(A)5 (B)6 (C)7 (D)82、以下不是C程序保留字的是: ______(A)int (B)main_ (C)if (D) sizeof#include<stdio.h> intx=8; int main(){void inc(int); int i;for(i=0;i<3;i++){inc(x);}printf("%d\n",x); return 0;} void inc(int data){++data;}(A)8 (B)9 (C)10 (D)114、请阅读下面C程序,选择程序的输出结果:______ #include <stdio.h>int main(){int data=9; data=~data+1;printf("%d\n",data); return 0;}(A)9 (B)-9 (C)-10 (D)10#include <stdio.h>typedef struct{int x; int y;} COORD;int main(){COORD a[]={{2,4},{3,6}};COORD *p=&a[1];--p;printf("%d\n", (p[1].x * p[1].y));return 0;}(A)6 (B)24 (C)8 (D)186、二叉树是非线性数据结构,_____________________________________。
C++50题答案【范本模板】
本学期《程序设计基础》课程实行上机考核,现将考核有关事项通知如下:(1)考核时间:本学期最后一次上机时间为机试。
(2)考核内容:C++面向过程部分,主要是算法设计与实现.考题来自本学期布置的作业、部分例题及一些补充的题目.(3)考试形式:机试前进入机房时,每人随机抽取一道题(同一个班的同学保证不抽到同一题),然后上机编程,调试通过后报告监考人员审核,审核通过后将源程序拷贝到监考人员U盘上,然后可以离开机房。
源程序文件明必须是“学号姓名.cpp",如“2012211532刘天。
cpp”。
(4)考试要求:机试时考试规则同课堂考试一致,不允许带书、纸张等。
不能携带任何可用计算机处理的软件或数据(不允许任何私人携带的U 盘、磁盘或计算器),不能携带任何类型的通讯工具,包括无线电接收器、移动电话.(5)考试成绩:本次机试成绩将在《程序设计基础》课程成绩中占25%的比重。
(6)其它有关事项由主考教师和监考人员负责处理。
附:考试题集1.利用异或运算对输入的文本进行加密解密输出,用户输入一个文本(字符串,设不超过20个字符),然后输入作为密钥的字符,程序输入加密及解密的字符串。
//加密字符串#include<iostream。
h>void main(){char a[21],b,key;int i;cout<〈"请输入字符串:";cin>〉a;cout<<"请输入密匙:”;cin〉>b;for(i=0;a[i]!=0;i++)a[i]=a[i]^b;cout<〈"加密后:";for(i=0;a[i]!=0;i++)cout〈〈a[i];cout<〈endl<<”请输入密码:”;cin>>key;for(i=0;a[i]!=0;i++)a[i]=a[i]^key;for(i=0;a[i]!=0;i++)cout<<a[i];cout<〈endl;}已阅,请放心食用2.编写一个程序,用户输入年份及月份两个数据,程序输出该月份的天数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
中国科学院遥感应用研究所硕士研究生入学考试样题《程序设计与算法语言》科目:一填空题(每空2分,共30分)1、对于一个具有n个结点的二元树,当它为一棵_________ 元树时具有最小高度,当它为一棵________ 寸,具有最大高度。
2、设数组a[1..50,1..80]的基地址为2000,每个元素占2个存储单元,若以行序为主序顺序存储,则兀素a[45,68]的存储地址为___________ 若以列序为主序顺序存储,则元素a[45,68]的存储地址为_____________ 。
3、对于一个具有n个结点的单链表,在已知的结点*p后插入一个新结点的时间复杂度为________ ,在给定值为x的结点后插入一个新结点的时间复杂度为4、已知int*p(),(*q)(); _________________ 贝U p 是____________ 而q 是。
5、已知一棵二叉树的前序序列为abdecfhg,中序序列为dbeahfcg,则该二叉树的根为__________ 左子树中有_____________ ,右子树中有 ___________ 。
& 己知有序表为(12,18,24,35,47,50,62,83,90,115 ,134)当用二分法查找90 时,需_________ 查找成功,47时___________ 功,查100时,需__________ 次才能确定不成功。
7、XML在地理空间信息领域的应用是_____________ 利用它可以存储和发布各种特征的地理信息,并控制地理信息在Web浏览器中的显示。
二选择题(每小题2分,共70分)1、用来表示一个变量的地址或者表示另一变量的地址的变量是()A. 函数;B.指针;C.数组;D.结构体;2、在C语言中,若函数调用时实参是数组名,则传递给对应形参的是()A •数组空间的首地址;B •数组的第一个元素值;C.数组中元素的个数;D.数组中所有的元素;3、int a = 2 ,则执行完表达式a+=a+=a-=a*a;后,a的值是()A. -4 ;B. 0;C. -8 ;D. 16;4、若有说明:int a[][3]={1,2,3,4,5,6,7}; 则a 数组第一维的大小是()A. 2B. 3C. 4D. 无确定值5、二维数组A的每个元素是由6个字符组成的串,其行下标i=0,1,…,8,列下标j=1,2,…,10。
若A按行先存储,元素A[8,5]的起始地址与当A按列先存储时的元素()的起始地址相同。
设每个字符占一个字节。
A. A[8,5]B. A[0,9]C. A[5,8]D. A[3,10]&已知有下面的三个类(使用C++语言描述):class A{ int a;public:void fun(){ cout<< ”class A fun() is called ”<<endl;}};class B { int a; public:A *a;};class C { int a; public:B *b;};在主程序中,定义一个类C的对象指针C *obj。
则下面的引用正确的是()A. obj->b->a->fun();B. obj.b->a.fun();C. obj->b.a->fun();D. obj.b.a->fun();7、对稀疏矩阵进行压缩存储目的是()。
A.便于进行矩阵运算 B .便于输入和输出C.节省存储空间 D .降低运算的时间复杂度8、链表所具备的特点是()①可随机访问任何一个元素;②插入、删除操作不需要移动元素;③无需事先估计存储空间大小;④所需存储空间与线性表长度成正比;A.①②③;B.②③④;C.①②④;D.①③④;9、计算机算法是指()A •数值计算方法;B.对抽象数据结构的操作方法;C •非数值计算方法;D.解决问题的有限运算序列;10、已知L是无表头结点的单链表,试从下面的语句中选出在表首插入S结点的语句()。
(1)L->next=S;(2)S->next=L;(3)S->next=L->next;(4)L->next=S->next;(5)L=S;(6)S=L;A.(1 )(6);B.(3)(5);C.(4)(6);D.(2)(5);11、一组记录的关键码为(46,79,56,38,40,84),则利用快速排序的方法,以第一个记录为基准得到的一次划分结果为()。
A.(38,40,46,56,79,84) B. (40,38,46,79,56,84)C.(40,38,46,56,79,84) D. (40,38,46,84,56,79)12、一个n 个顶点的连通无向图,其边的个数至少为()。
A.n-1 B .n C .n+1 D .nlogn ;13、有关类和对象的说法不正确的是()。
A. 类是对于众多对象的归纳;B. 类的对象具备该类的所有特征;C. 类是抽象的数据结构,而对象是具体的事件或事物等;D. 在程序中,我们只能使用对象的成员,而不能直接使用类的成员;14、以下语句或语句组中,能正确进行字符串赋值的是()。
A. char*sp ;*sp="right!" ;B. char s[lO] ;s="right! " ;C. char s[10] ;*s="right! " ;D. char*sp="right! ";15、非空的循环单链表head的尾结点p T满足()。
A. p T」ink=head B .p T」ink=NIL C . p=NIL D .p= head16、若长度为n 的线性表采用顺序存储结构,在其第i 个位置插入一个新元素的算法的时间复杂度为()(1<=i<=n+1)。
2A. O(0)B. O(1)C. O(n)D. O(n 2)17、有六个元素6, 5, 4, 3, 2, 1的顺序进栈,问下列哪一个不是合法的出栈序列?()。
A. 5 4 3 6 1 2 ;B. 4 5 3 1 2 6 ;C. 3 4 6 5 2 1 ;D. 2 3 4 1 5 6 ;18、软件管理是软件工程化生产的重要环节,以下哪些是软件工程管理应包括的内容?()。
① 人员组织;② 进度安排;③•质量保证;④成本核算; A.①②;B.②③;C.②④;D.①②③④;19、若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是()A. 9 B . 11 C . 15 D .不确定20、以下能对二维数组a进行正确初始化的语句是()。
A. int a[2][]={{1,0,1},{5,2,3}};B. int a[][3]={{1,2,3},{4,5,6}};C. int a[2][4]={{1,2,3},{4,5},{6}};D. int a[][3]={{1,0,1},{},{1,1}};21、以下正确的说法是()。
' 在C语言中A. 实参和与其对应的形参各占用独立的存储单元B. 实参和与其对应的形参共占用一个存储单元C. 只有当实参和与其对应的形参同名时才共占用存储单元D. 形参是虚拟的,不占用存储单元22、对二叉树的结点从1开始进行连续编号,要求每个结点的编号大于其左、右孩子的编号,同一结点的左右孩子中,其左孩子的编号小于其右孩子的编号,可采用()次序的遍历实现编号。
A .先序 B.中序 C.后序D.从根开始按层次遍历23、如下所示是一棵5阶B树,该B树现在的层数为2。
从该B树中删除关键码38后,该B树的第2层的结点数为()A. 6 ;B. 7 ;C. 8 ;D. 9 ;24、以下正确的说法是 ___A. 定义函数时,形参的类型说明可以放在函数体内B. return 后边的值不能为表达式C. 如果函数值的类型与返回值类型不一致,以函数值类型为准D. 如果形参与实参类型不一致,以实参类型为准25、下列说法不正确的是()。
A. 图的遍历是从给定的源点出发每一个顶点仅被访问一次B. 遍历的基本算法有两种:深度遍历和广度遍历C•图的深度遍历不适用于有向图D.图的深度遍历是一个递归过程26、下面对于数组的定义正确的是()。
int M=10;const int N=9;static int K=20;#define J 50main(int argc, char* argv[]){int I;cin>>I;int array1[I]; ———————————————①int array2[M]; ———————————————②int array4[K]; ———————————————③int array3[N]; ———————————————④int array5[J]; ——————————————⑤}A.①②③④⑤;B.②③④⑤;C.③④⑤;D.④⑤;27、执行完下列语句段后,i 值为:()int f(int x){ return ((x>0) ? x* f(x-1):2);} int i ;i =f(f(1));A. 2B. 4C. 8D. 无限递归28、一个递归算法必须包括()。
A.递归部分B. 终止条件和递归部分C. 迭代部分D. 终止条件和迭代部分29、适用于折半查找的表的存储方式及元素排列要求为()A .链接方式存储,元素无序B .链接方式存储,元素有序C. 顺序方式存储,元素无序D .顺序方式存储,元素有序30、在一棵m阶的B+树中,每个非叶结点的儿子数S应满足().A. 2< S< mB.C. 1 < S< 2D. 131、设哈希表长为14,哈希函数是H(key)=key%11,表中已有数据的关键字为15,38, 61, 84共四个,现要将关键字为49的结点加到表中,用二次探测再散列法解决冲突,则放入的位置是()A . 8B . 3C . 5D . 932、如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。
()就是不稳定的排序方法。
A.起泡排序B .归并排序 C .希尔排序 D .直接插入排序33、对一组数据(84, 47, 25, 15, 21)排序,数据的排列次序在排序的过程中的变化为(1)84 47 25 15 21 (2)15 47 25 84 21(3)15 21 25 84 47 (4)15 21 25 47 84则采用的排序是()。
A.选择B. 冒泡C. 快速D. 插入34、在下列排序算法中,哪一个算法的时间复杂度与初始排序无关()。