算法设计期中试卷
算法设计分析期中试题
《算法设计与分析》期中试卷一、叙述分治算法的基本思想及一般算法设计模式;二、叙述动态规划算法的基本步骤及动态规划算法的基本要素;三、改进课本P74的Lcs算法,使改进算法不用数组b亦可在O(m+n)的时间内构造最长公共序列;四、求下列函数的渐近表达式(1). 3n2+10n(2).n2/10+2n(3)21+1/n(4)logn3(5)10log3n五、对于下列各组函数发f(n)和g(n),确定f (n)=O((g(n)))或者f(n)= ((g(n)))或者f(n)=θ((g(n))),并简述理由(1). f(n)=logn2 , g(n)=logn+5;(2). f(n)=logn2 , g(n)= √n;(3), f(n)=n , g(n)= logn2;(4). f(n)=nlogn+n,g(n)=logn;(5). f(n)=10.g(n)=log10;(6). f(n)=log2n g(n)=logn(7). f(n)=2n g(n)= 3n;(8). f(n)=2n g(n)= 100n2;六、设a[0:n-1]是已排好序的数组,请改写二分搜索算法,使得当搜索元素x不----------------------------精品word文档值得下载值得拥有----------------------------------------------再数组中时,返回小于x的最大元素位置i和大于x的最小元素位置j。
当搜索元素在数组中时,i和j相同,均为x在数组中的位置七、设a[0:n-1]是有n个元素的数组,k(0<=k<=n-1)是非负整数。
试设计一个算法将子数组a[0:k]与a[k+1:n-1]换位。
要求算法在最坏的情况下耗时O(n),且只用到O(1)的辅助空间。
八、在一个由元素组成的表中出现次数最多的元素称为众数。
试写一个寻找众数的算法,并分析其计算复杂性。
九、设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。
算法与程序设计期中考试试题
算法与程序设计期中考试试题算法与程序设计期中考试试题⼀、选择题:每题2分,30题,共60分()1.以下问题中最适合⽤计算机编程处理的是。
A.制定本学期的学习计划B.计算正⽅形的周长C.创作⼀⾸歌曲D.求1000以内的所有素数()2.⽤计算机解决问题的步骤⼀般为。
①编写程序②设计算法③分析问题④调试程序A.①②③④B.③④①②C.②③①④D.③②①④()3.下⾯说法正确的是。
A.算法+数据结构=程序B.算法就是程序C.数据结构就是程序D.算法包括数据结构()4.以下是算法具有的特征。
①有穷性②确定性③可⾏性④输⼊⑤输出A.①②③B.②③④C.③④⑤D.①②③④⑤()5.常⽤的算法描述⽅法有。
A.⽤⾃然语⾔描述算法B.⽤流程图描述算法C.⽤伪代码描述算法D.以上都是()6.流程图中表⽰判断框的是。
A.矩形框B.菱形框C.圆形框D.椭圆形框()7.程序设计语⾔的发展阶段不包括。
A.⾃然语⾔B.机器语⾔C.汇编语⾔D.⾼级语⾔()8.要使命令按钮显⽰⽂字“确定”,正确的设置是把该命令按钮的。
A.Font属性设置为“确定”B.ForeColor属性设置为“确定”C.Caption属性设置为“确定”D.BorderStyle属性设置为“确定”()10.下⾯的属性中,⽤于设定控件⾼度的是。
A.F ont B.H eight C.Caption D.W idth ()11.窗体的BackColor属性⽤于设置窗体的____。
(p18)A.宽度B.前景⾊C.⾼度D.背景⾊12.在VB中,若要将变量N定义为单精度型数据,则下列表⽰⽅法中正确的是化。
A.Dim N as String B.Dim N as Single C.Dim N as Integer D.Dim N as Long()14.在程序设计的过程中,错误的声明⼀个变量会导致程序不能正常编译。
因此,需要规范合理地声明⼀个变量,下列合法的变量名是。
A.if B.zf3 C.8-a D.a#2()17.某学校打算选拔⾝⾼T超过1.75⽶且体重W不⼤于55公⽄的⼈作为招⽣条件,表⽰该条件的布尔表达式为。
算法设计与分析期中考试试题
。
二、算法填空 1.最大子段和: 动态规划算法 int MaxSum(int n, int a[])
{ int sum=0, b=0; //sum 存储当前最大的 b[j], b 存储 b[j] {
for(int j=1; j<=n; j++) if (b>0) else if(b>sum) } return sum; } 2.贪心算法求装载问题 template<class Type> b+= a[j] ;
; //一旦某个区段和为负,则从下一个位置累和 ;
void Loading(int x[], Type w[], Type c, int n) { int *t = new int [n+1]; ; for (int i = 1; i <= n; i++) x[i] = 0; for (int i = 1; i <= n && w[t[i]] <= c; i++) {x[t[i]] = 1; ;} } 3.快速排序 template<class Type> void QuickSort (Type a[], int p, int r) { if (p<r) { int q=Partition(a,p,r); ; //对左半段排序 ; //对右半段排序 } }
4. 对于下图使用 Dijkstra 算法求由顶点
求各个顶点对之间的最短路径的算法思想。
期中试题
算法设计期中试卷平时作业参考解答
《算法分析与设计》2021-2021-2学期期中测试(信息安全专业DQ 教学班)姓名:学号:得分:1. 证明()()()()()()()O f n O g n O f n g n +=+。
(10分)证明:对于任意f 1(n ) O (f (n )),存在正常数c 1和自然数n 1,使得对所有n n 1,有f 1(n ) c 1f (n )成立。
类似,对于任意g 1(n )O (g (n )),存在正常数c 2和自然数n 2,使得对所有n n 2,有g 1(n )c 2g (n )成立。
令c 3=max{c 1, c 2},n 3 =max{n 1, n 2},则对所有的nn 3,有f 1(n ) +g 1(n ) c 1f (n ) + c 2g (n )c 3f (n ) + c 3g (n ) = c 3(f (n ) + g (n ))即()()()()()()()O f n O g n O f n g n +=+成立。
2. 将下列5个函数按渐近增加率由低至高进行排序,要求写出比较进程。
(15分)解: 100log 2log log log 24()log 100log ,()2log ,n n n f n n n f n n n +====(1) 2()f n 是对数函数的幂,5()f n 是幂函数,因此()25()()f n O f n =; (2) ()()()491105log limlimlim log n n n f n n nn n f n n →∞→∞→∞===∞,因此()54()()f n O f n =; (3) ()()423log 1limlimlim 0log n n n f n n n f n n n n→∞→∞→∞===,因此()43()()f n O f n =;(4) 对1()f n 和3()f n 取对数,有()()() 13log ()log loglog loglog ,log ()2log loglog log f n n n n n n n f n n n n =+=Θ=Ω=+=Θ,因为()log n O n =,所以()31()()f n O f n =;因此,5个函数按渐近增加率由低至高排序为25431(),(),(),(),()f n f n f n f n f n 。
算法分析与设计期中练习
算法分析与设计期中练习一、选择题1. 实践表明可操作性最好且最有实际价值的是(B)情况下的时间复杂性。
A.最好B.最坏C.平均D.特殊2. 算法的时间复杂性函数用T(n)表示,其中参数n是指( A )。
A.问题规模B.运行时间C.输入量D.输出量3. 函数105logn2+n2logn+n3的渐近表达式为(C)。
A.logn2B.n2lognC.n3D. 1054. 二分搜索算法中,如果待查找元素x不在已排好序的n个元素中,则完成该搜索任务需用(B)时间。
A.O(nlogn)B.O(logn)C.O(n)D.O(n2)5. Strassen矩阵乘法问题中,改进算法的计算复杂性关键在于( A )。
A.减少矩阵乘法B.增加矩阵乘法C.减少矩阵加法D.增加矩阵加法6. 最优子结构和重叠子问题是(A)算法的两个基本要素。
A.动态规划B. 贪心C.分支限界D. 分治7. 使用贪心算法解决活动安排问题时使用了(B)优先的贪心选择策略。
A.最早开始活动B.最早结束活动C.时间最短活动D.时间最长活动8. f(n)= log7n,g(n)= 100logn,满足f(n)= ( B )(g(n))。
A. OB.ΩC.Θ9. f(n)= logn8,g(n)= log(100n),满足f(n)= (C)(g(n))。
A. OB.ΩC.Θ10. f(n)= 30(logn)10,g(n)= 30n5,满足f(n)= (A)(g(n))。
A. OB.ΩC.Θ11. f(n)= 105n,g(n)= log10n,满足f(n)= ( C )(g(n))。
A. OB.ΩC.Θ12. f(n)= 4n ,g(n)= 410(3n),满足f(n)= (B)(g(n))。
A. OB.ΩC.Θ13. 贪心法解装载问题时,采用的解题策略是(B)。
P95A.平均分配两艘轮船的载重B. 按集装箱重量从轻至重装船C. 将第一艘轮船尽可能装满D. 将第二艘轮船尽可能装满14. 用回溯法解0-1背包问题时,解空间可构造为(C)的形式。
算法设计分析期中试题.pdf
算法设计分析期中试题.pdf《算法设计与分析》期中试卷一、叙述分治算法的基本思想及一般算法设计模式;二、叙述动态规划算法的基本步骤及动态规划算法的基本要素;三、改进课本P74的Lcs算法,使改进算法不用数组b亦可在O(m+n)的时间内构造最长公共序列;四、求下列函数的渐近表达式(1). 3n2+10n(2).n2/10+2n(3)21+1/n(4)logn3(5)10log3n五、对于下列各组函数发f(n)和g(n),确定f(n)=O((g(n)))或者f(n)= ((g(n)))或者f(n)=θ((g(n))),并简述理由(1). f(n)=logn2 , g(n)=logn+5;(2). f(n)=logn2 , g(n)= √n;(3), f(n)=n, g(n)= logn2;(4). f(n)=nlogn+n,g(n)=logn;(5). f(n)=10.g(n)=log10;(6). f(n)=log2n g(n)=logn(7). f(n)=2n g(n)= 3n;(8). f(n)=2n g(n)= 100n2;六、设a[0:n-1]是已排好序的数组,请改写二分搜索算法,使得当搜索元素x不再数组中时,返回小于x的最大元素位置i和大于x 的最小元素位置j。
当搜索元素在数组中时,i和j相同,均为x 在数组中的位置七、设a[0:n-1]是有n个元素的数组,k(0<=k<=n-1)是非负整数。
试设计一个算法将子数组a[0:k]与a[k+1:n-1]换位。
要求算法在最坏的情况下耗时O(n),且只用到O(1)的辅助空间。
八、在一个由元素组成的表中出现次数最多的元素称为众数。
试写一个寻找众数的算法,并分析其计算复杂性。
九、设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。
十、给定n中物品和一背包,物品i的重量是ω,体积是b i,其价值为v i ,背包的容量为C,容积为D。
中南大学算法分析与设计期中测试2011答案
测试题1. 简述下列策略的基本思想 (15) (1) 分治将输入规模为n 的问题分成k (一般取k=2)个子问题,子问题相互独立,与原问题性质相同。
先分别对k 个子问题求解,再将子问题的解合并成原问题的解。
由于子问题还很大,故采用递归技术对子问题不断分割,直至子问题可直接简单地解出。
(2) 贪心贪心法希望从求局部最优达到全局最优,即依据贪心策略逐步构造最优解。
即先按确定贪心策略,将输入量排序。
再依次做出当前最优的选择,即当前输入可以构成合法的部分解,则将此输入量选入。
决策一旦做出,就不可再更改。
(3) 动态规划动态规划也是将问题求解过程分成k 个阶段(划分子问题),逐步决策的方法。
与贪心法不同的是,动态规划采用划分子问题,自底向上规划的方法。
要求子问题的划分具备最优子结构性质,即“最优化原理”成立。
需列出当前决策对前阶段决策状态的依赖关系(贝尔曼方程),求出各子问题的最优解,并将子问题的最优解代到下一步的决策中,逐步规划,解出原问题的解。
贝尔曼方程:⎪⎩⎪⎨⎧+==≠}.{min ,0ij i j i j s w u u u2. 下列数组4,1,3,2,16,9,10,14,8,7构成一个堆吗?如果不是,请用自底向上算法建一个 a max-heap.(10) 1) 不是一个最大堆2)按照算法,从i=n/2-5处开始测试i=5 它的孩子节点 2*i=10 ,满足最大堆的规定i=4 ,2i=8,2i+1=9 不满足,整理如下:i=3 ,2i=6,2i+1=7 不满足,整理如下:i=2 ,2i=4,2i+1=5不满足,整理如下:i=1 ,2i=2,2i+1=3不满足,依次整理如下:3. 针对下列叙述,根据正确或错误,选择T或F,并简要说明卫生么.(30)(1) T F nlogn=O(n3) 是上界(2) T F根据master定理, 递归方程T(n)=3T(n/3)+n 的解是T(n)=Θ(n)正确答案:T(n)=O(nlogn)(3)T F 最坏情况下, 归并排序的时间渐进阶是O(n2).归并排序最坏情况下的时间是:T(n)=O(nlogn)(4)T F 图的深度优先搜索的时间是O(n+|E|)。
高一《算法与程序设计》期中考试试卷
平湖中学2007学年第二学期信息技术期中考试卷考试时间90分钟命题:吴海忠审题:史玮卷Ⅰ客观题本部分题目的答案请涂写在机读卡上一、判断题(每小题2分,共20分;认为正确的在机读卡上涂A,认为错误的涂C)1、事件就是发生在该对象上的事情。
()2、用户在键盘上按下一个键,则会产生一个Click事件。
()3、在面向对象的程序设计中,用属性来描述对象的状态。
()4、在VB中,文本框具有Caption属性。
()5、语句Dim r As Double,意思是声明变量r为双精度实数型。
()6、函数Sqr(X)是求X的算术平方根。
()7、函数Fix(-5.1)和函数Int(-5.1)的返回值都是-5。
()8、a=3:b=2:c=-4是三个赋值语句。
()9、确定性是算法的一个主要特征。
()10、符号常量在程序运行过程中其值也是可以改变的。
()二、选择题(每小题2分,共50分)11、算法是解决问题的()A.程序代码B.方法与步骤C.计算公式D.最终结果12、结构化程序设计的三种基本结构是()A.顺序结构、选择结构、树型结构B选择结构、树型结构、循环结构C.选择结构、赋值结构、树型结构D顺序结构、选择结构、循环结构13、流程图中开始/结束框用来表示算法的开始和结束,以下哪个表示开始/结束框()A. B. C. D.14、“高速公路上的某处有一测速拍照系统,当车速超过规定时速时,照相机启动拍照,否则不拍照”。
用算法描述照相机的工作流程,合适的算法模式是()A.顺序模式B.选择模式C.循环模式D.树型模式15、Visual Basic是一种面向()的程序设计语言。
A.用户B.系统C.电脑D.对象16、如果要改变窗体的标题,则需要设置的属性是()A.Caption B.Name C.Text D.Label17、VB控制工具箱中的控件是()A.文本框B.单选按钮C.图片框D.标签18、下列控件中既可用于接受用户输入文本,又可用于显示文本的是()A.Label 控件B.T extBox 控件C.Timer 控件D.CommandButton 控件19、下列可以作为VB变量名的是()A.num-3 B.3num C.True D.num_220、在程序中用到某一整型变量的数据范围是-40000~40000,则该变量类型应说明为()A.Integer B.Byte C.Long D.Boolean21、用下面语句定义的数组的元素个数是()Dim A (-3 To 5) As IntegerA.6 B.7 C.8 D.922、下列给出的赋值语句中正确的是()A.4 = M B.-M =MC.B=A-3D.x + y = 023、要从文本框TxtShow中输出“中国您好!”,则以下语句正确的是()A.T extBox.Text="中国您好!" B.TxtShow.Text="中国您好!"C.bel="中国您好!" D.TxtShow.Text=“中国您好!”24、与数学表达式|x-31|对应的VB表达式是()A.Sqr(x-31) B.Val(x-31) C.Abs(x-31) D.Str(x-31)25、Len(“Friend”)的值是()。
教科版算法期中测试
C.⑵ ⑷ ⑸
√
D.⑵ ⑶ ⑷
46.下列给出的赋值语句中正确的是( )。
A.4 = M
B. -M =M
√
C. B=A-3
D. x + y = 0
47. 一个单窗体VB程序的运行界面如下图所示:
下列说法正确的是( ) (1)窗体内有1个按纽 (2)窗体内有2个文本框 (3)窗体内有3个标签 (4)该窗体的标题(Caption)属性值是“加法计算器” (A) (3) (4) (B) (1) (2)
√
D. dim s as string
30. 给定一个四位数的年份,判断它是否为闰年:四年一闰、百年不闰;四 百年又闰(年份能被4整除但不能被100整除是闰年,或者年份能被400整 除也是闰年。例如2004年和2000年都是闰年,2100年不是闰年)。下列判 断年份y是闰年的表达式正确的是( )。
t B.3.14 C.2018
√
D. "Visual Basic"
21.下列表达式能判断正整数x是偶数的是() A. x mod 2 <> 0 B. x\2=0
√
C. x mod 2 = 0 D. x mod 2 =1
22.仪仗队队员对身高的选拔要求是:高于1.85米,但不能超过1.90米。下 列表达式能正确表达的是()
14.设置窗体标题时,应改变窗体的
√
A.Caption 属性 B.BackColor属性 C.Font 属性 属性
15.班里的电脑小高手编制了一个判断星期几的VB程序,如果想在其它没有 安装 VB软件的电脑上正常运行该程序,则必须保存的文件是( )
√
A.星期计算.olb
B.星期计算.exe C.星期计算.vbp D.星期计算.frm
《算法语言与程序设计》12期中考试试卷
成都理工大学2011-2012学年第二学期《算法语言与程序设计》期中考试试题考试时间:100分钟; 考试形式:开卷一、选择题(每小题2分,共30分)1. 下列不能用于描述算法的是( )。
(A) 数据流图 (B) 自然语言 (C) 程序设计语言 (D) 形式语言2. 一个C 程序执行是从( )。
(A)本程序的main()函数开始,到本程序main()函数结束;(B) 本程序的main()函数开始,到本程序的最后一个函数结束; (C) 本程序的第一个函数开始,到本程序的最后一个函数结束; (D) 本程序的第一个函数开始,到本程序main()函数结束。
3. 在高级语言编译过程中,生成可执行程序(.exe)的是( )阶段。
(A)编辑 (B)编译 (C)链接 (D)调试 4.判断字符型变量ch 是否为大写字母,应使用表达式( )。
(A) ch<='A'||ch>='Z' (B) ch>='A'&ch<='Z' (C) 'A'<=ch<='Z' (D) ch>='A'&&ch<='Z'5. 若int 型变量x 的初始值为10,则执行完y=x--运算后,变量x 和y 的值分别为( )。
(A)9,9 (B)10,10 (C)9,10 (D)10,9 6. 下列程序的执行结果是( )。
#include <stdio.h> void main(){ float x=213.825754; printf("%-5.3f\n",x); }(A)格式错误 (B)213.825 (C)213.826 (D)-213.826 7. 以下选项中不能用作C程序合法常量的是 A)1,234 B)'123' C)123D)"\x7G"8. 算法具有五个方面的性质,下列( )不是算法必须具备的性质。
算法设计与分析:期中试卷+实验题目文字解析
算法设计与分析:期中试卷+实验题目文字解析期中试卷:算法设计与分析实验题目简单解析:P39-P43:2-1众数问题;2-7集合划分问题;2-10标准二维表问题;2-11整数因子分解问题P79-P80:3-1独立任务最有调度;3-2编辑距离问题;3-3石子合并问题;3-4数字三角形问题P109:4-2最优合并问题;4-4 磁盘文件最优存储问题P151-P152:5-1子集和问题;5-3最小重量机器设计问题2-1众数问题给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。
多重集S 中重数最大的元素称为众数。
例如,S={1,2,2,2,3,5}。
多重集S的众数是2,其重数为3。
数据输入输入包括多组数据,请处理到EOF结束。
每组数据,以一个n(1<=n<=100,000)开始,接下n 行,每行有一个数字(-231~231)。
数据输出对于每组输入数据,输出一行一个数字,表示众数。
如果存在多个解,只需输出值最小的众数即可。
算法思路:首先用快速排序算法排序数组,找到当前数组的中位数及其位置,然后把在数组中与中位数相同的数字向它靠拢,就可以统计中位数的个数。
现在数组已经被中间这些相等的数字分开了。
那么递归条件就有了。
如果中位数的个数比它左边这段短,那么说明左边有可能找到更多的,所以递归继续。
反之,如果左边这段数的长度比较短,那么就没必要继续递归。
对右边那段数据使用同样的策略。
2-7集合划分问题n个元素的集合{1,2,.,n }可以划分为若干个非空子集。
例如,当n=4 时,集合{1,2,3,4}可以划分为15个不同的非空子集如下:{1},{2},{3},{4}},{{1,2},{3},{4}},{{1,3},{2},{4}},{{1,4},{2},{3}},{{2,3},{1},{4}},{{2,4},{1},{3}},{{3,4},{1},{2}},{{1,2},{3,4}},{{1,3},{2,4}},{{1,4},{2,3}},{{1,2,3},{4}},{{1,2,4},{3}},{{1,3,4},{2}},{{2,3,4},{1}},{{1,2,3,4}}编程任务:给定正整数n 和m,计算出n 个元素的集合{1,2,., n }可以划分为多少个不同的由m 个非空子集组成的集合。
算法与程序设计期中试题_B卷
华东师范大学2013年~2014第二学期算法与程序设计基础期中测验(B卷)(本试卷答卷时间为90分钟)特别注意:1.试卷提交前请不要关机或重启动,也不要将试题所在目录移往他处。
2.答题结果必须保存在试题下发目录或子目录下(默认为"c:\test\"),提交时双击试题下发目录下的文件,根据提示输入学号和姓名(中间无空格)提交答卷。
一、程序改错(每小题15分,共30分)1. 请在环境下打开试题下发目录(如c:\test\文件夹)中的程序文件,按以下要求进行修改,使程序能正确运行并输出结果。
(1)该程序根据输入的正整数n,计算1至n的累计和。
(2)程序运行过程与结果类似如下所示修改后的程序请另存为ans11d-学号-姓名.py(与原文件在同一目录下)。
2. 请在环境下打开试题下发目录(如c:\test\文件夹)中的程序文件,按以下要求进行修改,使程序能正确运行并输出结果。
(1)该程序根据输入的三个整数,判断输出最大值。
(2)程序运行结果类似如下所示:修改后的程序请另存为ans12d-学号-姓名.py(与原文件在同一目录下)。
二、程序填空(每小题5分,共35分)1. 请在环境下打开试题下发目录(如c:\test\文件夹)中的程序源文件,按下列要求对文件中的下划线进行填空(用填空内容代替下划线),调试并运行,完成下列功能:读取文本文件,抽取其中的用户名和对应的Email用户名,写入到文本文件(20分)。
的部分内容为:结果文件的内容应该为:修改后的程序请另存为ans21d-学号-姓名.py(与原文件在同一目录下)。
2.根据输入的曾是输出三角形(17分)。
(1)提示输入三角形的层数。
(2)根据输入的层数,输出运行结果所示的三角形。
(3)程序运行结果类似如下所示:对应的程序命名为ans32d-学号-姓名.py(与原文件在同一目录下)。
算法期中综合练习试卷1
期中综合练习试卷1一、看一看,选一选(每小题5分,共30分)1.投掷两次正方体骰子,其”点数之和等于6”这一事件包含的基本事件个数( )A.2B.3C.4D.5,成绩分布如下:A.3.4B.34C.0.34D.34/73.为了了解参加一次知识竞赛的1553名学生的成绩,决定采用系统抽样的方法抽取一个容量为50的样本,那么总体中应随机剔除除个体的数目是( ) A .2 B. 3 C .4 D. 5 4.如右所示的伪码表示( )A.x y =B.⎪⎩⎪⎨⎧<=>-=)0(1)0(0)0(1x x x y C.⎪⎩⎪⎨⎧>=<-=)0(1)0(0)0(1x x x yD.1-=y5.某班有50名学生,现在采用逐一抽取的方法从中抽成5名同学参加夏令营,学生甲最后一个去抽,则他被选中的概率为 ( )A .O.1B .O .02 C.0或l D.以上都不对6.已知某两个变量x,y 之间存在着线性相关关系,其回归线性方程是x y 5.12^-=,则估计x=0.2时,y 的值大约是( )A.1.7B.5C.2.3D.无法确定二、想一想,填一填(每小题5分,共20分)7.有两个变量x,y ,写出互换它们的值的算法:8.从100个家庭中抽取10个家庭进行问卷调查,用系统抽样的方法进行抽取.其过程是 .9.在求频率分布时,把数据分为5组,若已知其中的前四组频率分别为0.1,0.3,0.3,0.1,则第五组的频率是 ,这五组的频数之比为 .10.在一个圆上任取三点,则分成的三段弧中任两段大于第三段的概率 .三、算一算,答一答(11~13题12分,14题14分,共50分)11.在2005年高考中,江苏省有48万名考生.为了估计他们的数学平均成绩,从中逐个抽取2000名学生的数学成绩作为样本进行统计分析,请回答以下问题:(1)本题中,总体、个体、样本容量各指什么?(2)本题中,采用的抽样方法是什么?(3)假定考生小陈参加了这次考试,那么他被抽中的概率是多少?12张老板与陈经理相约于中午11时到12时在启东宾馆会面,约定先到的人等候另一个人,经过20分钟方可离开,已知他们在期限内到达目的地是等可能的,求此二人会面的概率.13.现从某四人中随机抽出一个人参加会议,采用如下办法:同时掷两个骰子,正面向上的点数和被4除若余1,则甲去;若余2,则乙去;若余3,则丙去;若能整除,则丁去.试问这样的抽法公平吗?为什么?14.设计一个算法:判定某年是否为闰年,并画出流程图。
算法期中综合练习试卷2
期中综合练习试卷2一、看一看,选一选(每小题2分,共16分)1.要完成下列2项调查:①从某社区125户高收入家庭,280户中等收入家庭,95户低收入家庭中选出100户调查社会购买力的某项指标;②从某中学高一年级的12名体育特长生中选出3人调查学习负担情况。
应采用的抽样方法是 ( )A .①用随机抽样法 ②用系统抽样法B .①用分层抽样法 ②用随机抽样法C .①用系统抽样法 ②用分层抽样法D .①、②都用分层抽样法 2.高一(3)班共有54名学生,现从中抽取13名同一年出生的学生,则下列事件是必然事件的为( )A.至少有2人在同一个月出生B.至多有2人在同一个月出生C.没有人在同一个月出生至少有一件正品D.至多有12人在同一个月出生3.在用伪码编写九九乘法表的算法时,使用了下列( )语句. A.赋值语句 B.条件语句 C. 循环语句 D.三种语句都有4.如右所示的伪码表示( )的算法.A.求1×3×5×---≤100000的最大整数B.求1×3×5×---≥100000的最大整数C.求1×4×7×---≤100000的最大整数D.求1×4×7×---≥100000的最大整数5.已知样本a 1,a 2,---,a n 的平均数等于a ,b 1,b 2,---,b n 的平均数等于b ,则数据a 1,a 2,---,a n ,b 1,b 2,---,b n 的平均数等于( )A .a+bB .21(a+b ) C .2(a+b ) D .ab6.从装有2006个正品和5个次品的口袋内任取2个产品,则互斥而不对立的事件是( ) A .至少有1个次品与都是次品 B .至少有1个次品与至少有1个正品C .至少有1个次品与都是正品D .恰有1个次品与恰有两个次品 7.为了评价高一(1)班与(2)班数学教学质量的好差,若平均成绩不相上下,则还需考虑( )A.中位数B.众数C.方差D.频率8.写出函数⎪⎩⎪⎨⎧≥-+<≤-+<<=)7)(7]([4.28.18)73(3]([6.16.11)30(10x x x x x y 的伪码,正确的是( )二、想一想,填一填(每小题3分,共12分)9.一个样本的方差是])3()3()3[(201222212-++-+-=n x x x s ,则这组数据的总和等于 。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A1A2A3A4A5
(2)最少数乘次数即m[1,4]=10500
1 2 3 4
0
20000
27000
10500
0
12000
8000
0
6000
0
3.答:由0-1背包问题的最优子结构性质,可以建立计算m(i,j)的递归式如下。
根据动态规划解0-1背包的递归式,得到下面的动态规划表:
2.答:顺序查找的时间是O(n),折半查找O(log n)降低了一个数量级。采用分治策略,每一次比较可以排除一半的数据。共需要比较4次才能找到82.
3.答:归并排序的分治是将数组从中间分开,分别对前后来那个部分进行排序,将排序后的两个数组合并成整个数组的排序。这样分治为递归过程,直到一个元素时返回。快速排序的分治是选取分割元素,以分割元素为界,将数组分成两部分,一部分小于分割元素,一部分大于分割元素,分别对两部分排序。
i
0
1
2
3
4
5
0
0
0
0
0
0
0
1
0
10
15
25
31
37
2
0
10
15
25
31
36
3
0
0
15
21
21
36
4
0
0
15
15
15
15
由上表可知,背包最大价值为m[1][5]=37,最优解为(1,1,0,1)
A.分治策略B.动态规划法C.贪心法D.回溯法
14.使用二分搜索算法在1000个有序元素表中搜索一个特定元素,在最坏情况下,搜索总共需要比较的次数是()。
A.10 B.11 C.500 D.1000
15.关于0-1背包问题以下描述正确的是()。
A.可以使用贪心算法找到最优解
B.能找到多项式时间的有效算法
5.二分搜索算法是利用( )实现的算法。
A.分治策略B.动态规划法C.贪心法D.回溯法
6.下列不是动态规划算法基本步骤的是( )。
A.找出最优解的性质B.构造最优解
C.算出最优解D.定义最优解
7.动态规划算法的基本要素为()。
A. 最优子结构性质与贪心选择性质
B.重叠子问题性质与贪心选择性质
C.最优子结构性质与重叠子问题性质
A.分治策略B.动态规划法C.贪心法D.回溯法
11.使用分治法求解不需要满足的条件是()。
A.子问题必须是一样的
B.子问题不能够重复
C.子问题的解可以合并
D.原问题和子问题使用相同的方法解
12.贪心算法与动态规划算法的主要区别是( )。
A.最优子结构B.贪心选择性质C.构造最优解D.定义最优解
13.实现最长公共子序列利用的算法是( )。
3.简述归并排序算法和快速排序算法的分治方法。并对下列实例数据A=(38,27,55,50,13,49,65)排序,写出采用快速排序算法,数组A第一次被分割的过程。
四、算法分析题:(每题10分,共30分)
1.有16个选手参加循环赛,循环赛一共进行15天,每个选手必须与其他的15个选手各赛一场,每个选手一天只比赛一次;设计一个满足上述要求的比赛日程表,并简述采用的算法基本思路。
8.最优二叉搜索树即是【9】二叉搜索树。
9.任何可用计算机求解的问题所需的时间都与其【10】有关。
三、简答题:(每小题10分,共30分)
1.简述归动态规划算法的基本步骤,以及动态规划算法与分治法的异同。
2.与顺序查找算法相比,二分查找算法的时间复杂性有多大程度的降低?它是如何提高算法的效率的?有一个有序表为{1,3,9,12,32,41,45,62,75,77,82,95,100},当使用二分查找值为82的结点时,经过多少次比较后查找成功?
数组A第一次被分割的过程如下:
38 27 55 50 13 49 65
13 27 55 50 38 49 65
137 38 50 55 49 65
四、算法分析题:(每题10分,共30分)
1.答:可采用分治策略,将所有的选手分为两半,n个选手的比赛日程表就可以通过为n/2个选手设计的比赛日程表来决定。递归地用一分为二的策略对选手进行分割,直到只剩下2个选手时,比赛日程表的制定就变得很简单。这时只要让这2个选手进行比赛就可以了。设计的比赛日程表如下所示:
3.出自于“平衡子问题”的思想,通常分治法在分割原问题,形成若干子问题时,这些子问题的规模都大致【4】。
4.大整数乘积算法是用【5】来设计的。
5.快速排序算法的性能取决于【6】。
6.已知一个分治算法耗费的计算时间T(n),T(n)满足如下递归方程:
解此递归方程可得T(n)=O(【7】)。
7.递归通常用【8】来实现。
(2)递归地定义最优值。
(3)以自底向上的方式计算出最优值。
(4)根据计算最优值时得到的信息,构造最优解。
分治法与动态规划法的相同点是:将待求解的问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。(3分)
两者的不同点是:适合于用动态规划法求解的问题,经分解得到的子问题往往不是互相独立的。而用分治法求解的问题,经分解得到的子问题往往是互相独立的。(3分)
(2)请根据以上的递归关系,计算出矩阵连乘积A1A2A3A4所需要的最少数乘次数。要求写出求解过程,并将结果填入m[4][4]。
3.请用动态规划解下列0-1背包问题,写出递归式及求解过程。共有4个物品,背包重量C=5,下表中列出每个物品的重量和价值。
物品
重量(公斤)
价值(美元)
1
2
12
2
1
10
3
3
21
天数12 3 4 5 67 8 9 10 11 12 13 14 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
1
4
3
6
5
8
7
10
9
12
11
14
13
16
15
3
4
1
2
7
8
5
6
11
12
9
10
15
16
13
14
4
3
2
1
8
7
6
5
12
11
10
9
16
15
14
13
5
6
7
8
1
2
3
4
13
14
15
16
9
10
11
12
6
5
8
7
2
1
4
3
14
13
16
15
10
9
12
11
7
8
5
6
3
4
1
2
15
16
ห้องสมุดไป่ตู้13
14
11
12
9
10
8
7
6
5
4
3
2
1
16
15
14
13
12
11
10
9
9
10
11
12
13
14
15
16
1
2
3
4
5
6
7
8
10
9
12
11
14
13
16
15
2
1
4
3
6
5
8
7
11
12
9
10
15
16
13
14
3
4
1
2
7
8
5
6
12
11
10
9
16
15
14
南京信息工程大学滨江学院
2013 ─ 2014 学年第 1 学期
算法设计与分析 课程试卷
试卷类型期中考试类型开卷
注意:1、本课程为必修,学时为51,学分为3
2、本试卷共5页;考试时间120分钟; 出卷时间:2013年11月
3、姓名、学号等必须写在指定地方;考试时间:2013年11月11日
4、本考卷适用专业年级:计科11,软工11任课教师:宣文霞
13
4
3
2
1
8
7
6
5
13
14
15
16
9
10
11
12
5
6
7
8
1
2
3
4
14
13
16
15
10
9
12
11
6
5
8
7
2
1
4
3
15
16
13
14
11
12
9
10
7
8
5
6
3
4
1
2
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
2.答:(1)共有10个子问题。n+C(n,2)个
A1,A2,A3,A4 4个
A1A2, A2A3, A3A4
3.渐进算法分析是指()。
A.算法在最好情况、最坏情况和平均情况下的代价
B.当规模逐步往极限方向增大时,对算法资源开销“增长率”上的简化分析