武汉工程大学算法设计与分析期中试卷
华中师范大学网络教育学院《算法设计与分析》练习题库及答案
《算法设计与分析》练习题库及答案(加粗红色字体为2013下新增题目) 一、概念题:请解释下列术语。
1.数据类型2.队列3.多项式复杂度4.满二叉树5. NP-难度6.算法7. SIMD(并行算法)8.连通图9.抽象数据类型10.指数复杂度11.递归12.完全二叉树13.状态空间树14. NP-完全的15.算法与过程16.有向图与无向图17.树18. P类问题19. 确定的算法20. NP问题21. 最小生成树22. 动态规划23. 数据结构24. 排序二、填空题1. 简单递选分类过程中所需进行移动存储的操作次数较少,其最大值为___________。
2. 一组有序的n个数,采用逐个查找算法查找一给定的数是否出现在序列中,其算法复杂性为_____________。
3. 动态规划实际上是研究一类__________________的算法,其应用非常广泛。
4. BFS算法的中文名称是______________________算法。
5. 一棵树中定义为该树的高度或深度。
6. 二分检索树要求树中所有结点中的元素满足。
7. 比较树的结点由称为和的两种结点组成。
8. 外结点用一个结点表示,在二分检索算法中它表示不成功检索的一种情况。
9. 由根到所有内部结点的距离之和称为 ;由根到所有外部结点的距离之和称为 .10.max和min被看成是两个内部函数,它们分别求取两个元素的大者和小者,并认为每次调用其中的一个函数都只需作次元素比较。
11.如果用分治策略来设计分类算法,则可使最坏情况时间变为o(n logn)。
这样的算法称为。
12.贪心算法可行的第一个基本要素是。
13. 当一个问题的最优解包含着它的子问题的最优解时,称此问题具有性质。
14. 二路归并模式可以用树来表示。
15. kruskal算法对于每一个无向连通图g产生一棵。
16.因为如果有环,则可去掉这个环且不增加这条路径的长度(不含有负长度的环)。
如果k是这条最短路径上的一个中间结点,那么—由i到k和由k 到j的这两条子路径应分为别是由i到k和.由k到j的最短路径。
2023年湖北武汉工程大学专业设计A考研真题
2023年湖北武汉工程大学专业设计A考研真题一、考试的总体要求1、《501专业设计A》是一门针对报考我校艺术设计(专硕)、设计学(学硕)专业各研究方向的统一初试科目,考生根据自己的专业特长,只需要在考试题型中选择一个专业方向的试题进行答题。
2、本科目注重考核考生设计构思拓展能力、创新能力,以及设计实践的应用能力等,同时考察学生对特定命题的综合设计能力。
3、具体考察考生独立思考,提出问题、分析问题并解决问题的能力。
二、考试的内容及分值比例1、提出问题并分析问题(30分)根据考试题型资料,选择适合的试题,找准设计创新点,提出问题、分析问题和解决问题。
要求文字陈述不少于300-500字,设计分析结合图表和文字描述,充分表达设计构思。
2、设计提案草图(30分)工业设计方向需要画出3套设计草图方案且选取其中一个方案进行深入设计,其它专业方向只需要画出2套设计草图方案且选取其中一个方案进行深入设计,设计草图应该包括创意构思和分析,以及必要的文字说明。
3、设计表达(90分)各专业根据自身专业方向特征进行相关设计表现,要求充分表达设计创意、设计构思、设计分析过程和设计原理。
三、考试题型1.工业设计方向:设计一款适老智能产品在高速运转的时代里,老人是容易忽视的群体之一,随着老龄化的加重,养老问题不仅是每个家庭日常谈论问题,通用型智能产品的适老化设计逐渐受到重视,市场上还出现了大量的专用型适老智能产品和品牌。
但是许多适老智能产品并未真正做到“适老设计”,作为设计师的你,怎么才可以提高老人晚年的生活幸福感呢?请从老人的角度出发去设计产品,在设计上不仅要关注老年人的显性需求,同时要考虑隐形需求的结合,不仅要关注生理需求,同时要考虑心理需求的结合。
结合用户、场景、科技、需求及生活经验,需要对产品功能特征进行分析、归纳、提取,根据前述问题及分析,做出3套设计提案,并结合草图附简要设计提案说明;选择其中一个方案进行深入设计,需深入刻画设计产品特点和习惯行为逻辑之间的联系,标题自拟。
武汉工程大学复试-《算法设计与分析》2020年考研专业课大纲
武汉工程大学2020年硕士研究生复试《算法设计与分析》考试大纲第一部分考试说明一、考试性质《算法设计与分析》是武汉工程大学计算机科学与技术及相关专业硕士研究生入学考试科目之一,以高等学校计算机学科优秀本科毕业生能达到的及格或及格以上水平为评价标准,要求考生全面、系统地掌握“算法设计与分析”的基本概念、基本原理和典型方法,能灵活运用所学知识阐述求解实际问题的方法和途径。
目的在于考察考生理论素养与专业知识,便于优秀人才的选拔。
考试对象为参加硕士生入学考试的应届或非应届硕士毕业生,以及具有同等学历的在职人员。
二、评价目标1.掌握算法的基本概念和分析算法的基本方法;2.掌握分治策略、贪心方法、动态规划、回溯法、分支-限界法、图算法、概率算法、近似算法、NP完全性理论的基本原理。
3.熟练掌握求解典型问题的算法的设计思想和实现方法,并能灵活运用,以能有效求解新的问题。
4.具有较高的算法设计能力和设计技巧,可能设计出解决实际问题的有效算法。
5.了解算法研究领域的现状与趋势。
三、考试形式与试卷结构1.考试形式:闭卷、笔试、上机。
2.答题时间:笔试120分钟,上机90分钟。
3.试卷题型:填空题、选择题、改错题、简答题、计算题、算法分析题、程序设计题。
每年在上述题型中选用3种。
重点考察对本课程知识点的掌握程度和综合应用能力。
四、参考教材1.王晓东编著《算法设计与分析》(清华大学出版社)2.李春葆、李筱驰、等《算法设计与分析(第二版)》(清华大学出版社)3.苏德富、钟诚著《计算机算法设计与分析》(电子工业出版社)4.POJ部分测试题()第二部分考查要点1.算法分析基础1) 熟悉渐近表示法,掌握渐近符号O等的定义,能判断一个较复杂的函数属于哪个渐近增长阶;2) 熟悉一些算法复杂度分析的方法,比如说主定理法等,能对结构复杂的算法进行分析。
2.算法设计基础1) 熟悉算法设计的三大技巧:贪心算法、分而治之,动态规划。
2) 能证明各种算法的正确性。
武汉大学计算机学院《算法设计与分析》考试试卷
武汉大学计算机学院2007---2008学年第一学期2005级《算法设计与分析》考试试卷(A)1、(10分)证明:若f₁(n)=O(g₁(n)), f₂(n)=O(g₂(n)),则有:f₁(n)* f₂(n)= O(g₁(n))* O(g₂(n))2、(10分)设f(n)为单调递减函数,利用不等式证明:= O(log n)。
3、(10分)用归纳法证明递归关系:T(n的解为T(n)=,n=0,1,2….4、(10分)试用RadixSort算法对下面数组进行排序,写出排序的详细过程:1455,5677,5323,8122,4901,6647,1123,87625、(10分)给定数组含25个元素的数组如下,利用SELECT算法求数组中第13小的元素,在应用SELECT算法时,要求每组含有的元素个数为7而不是5,另外,当元素个数是6时,直接求解:8,33,17,51,57,49,35,11,25,37,14,2,3, 13,52,12,6,29,32,54,5,16,22,23,76、(12分)给定两个字符串X=(A,B,C,B,D,A,B)和Y=(B,D,C,A,B,A),考虑利用动态规划方法求解这两个字符串的最长公共子序列问题:(1)利用动态规划算法求出上述两个字符串的最长公共子序列,要求写出动态规划方程和详细的求解过程,不需要写出具体的算法;(2)请给出一个最长公共子序列的表达式,并说明你的依据。
7、(12分)假设有一个包含100,000个字符的数据文件要压缩存储,各字符的出现频度如下:(1)试构造出这些字符的哈弗曼编码方案,要求写出详细过程,不需要写出具体算法;(2)计算采用哈弗曼编码方案与定长编码的压缩比。
8、(16分)设有向图的成本矩阵如下,写出利用TSP问题的分析限界法(搜索树限为二叉树)求经过该图每个节点刚好一次的闭合最短路径的过程:(1)写出原始成本矩阵的归约矩阵,并计算其矩阵约数;(2)写出用来划分节点的边的选择方法;(3)给出具体的搜索树;(4)根据搜索树,列出最优的周游路线和其对应的成本值。
08—09年期末考试算法设计与分析试卷B及答案
附表5:考试课程: 班级: 姓名: 学号:------------------------------------------------- 密 ---------------------------------- 封 ----------------------------- 线 ---------------------------------------------------------、⑴ 证明:令F(N)=O(f),则存在自然数N1、C1,使得对任意的自然数N 1N ≥,有: F(N));(1N f C ≤……………………………..(2分)同理可令G(N)=O(g), 则存在自然数N 2、C2,使得对任意的自然数N 2N ≥,有:G(N));(2N g C ≤ ……………………………..(3分)令 C3=m ax{C1,C2},N3=ma x{N1,N2},则对所有的N 3N ≥,有: F(N));(3)(1N f C N f C ≤≤G (N ));(3)(2N g C N g C ≤≤ ……………………………..(5分) 故有:O (f)+O(g)=F(N)+G(N))())()((3)(3)(3g f O N g N f C N g C N f C +=+=+≤ 因此有:O(f)+O(g)=O(f+g ) ……………………………..(7分)⑵ 解:① 因为:;01033)103(lim 222=+-+∞→nn n n n n 由渐近表达式的定义易知: 103322+n n 是的渐近表达式。
……………………………..(3分)② 因为:;0/12121)/121(lim=+-+∞→nn n 由渐近表达式的定义易知:21是21+1/n 的渐近表达式。
……………………………..(6分)2、解:经分析结论为:(1));5(log log 2+=n n θ………………………….(5分)(2))(log 2n n O =;………………………….(10分)(3))(log 2n n Ω=;………………………….(15分)3、解:用分治法求解的算法代码如下:int partit io n(float A[],int p,in t r ) {i nt i=p,j =r+1; f lo at x =a[p]; w hile (1) {while(a[++i]<x&&i <r); w hile(a[--j]>x);if(i>=j)break;a[i]];……………………………..(4分)[ja};a[p]=a[j];a[j]=x;returnj;……………………………..(7分)}voidQuicksort(floata[], int p, intr){if( p<r){int q=partition(a,p,r);……………………………..(10分)Quicksort(a,p,q-1);Quicksort(a,q+1,r);}};Quicksort(a,0,n-1);……………………………..(13分)4、解:用动态规划算法求解的算法代码如下:int lcs_len(char *a,char *b,int c[][N]){intm=strlen(a),n=strlen(b),i,j;for(i=0;i<=m;i++) c[i][0]=0;for(j=1;j<=n;j++) c[0][j]=0;……………………………..(4分)for(i=1;i<=m;i++)for(j=1;j<=n;j++)if(a[i-1]= =b[j-1])c[i][j]=c[i-1][j-1]+1;else if(c[i-1][j]>=c[i][j-1])c[i][j]=c[i-1][j];else c[i][j]=c[i][j-1];……………………………..(7分) return c[m][n];……………………………..(8分)};char *build_lcs(char s[],char *a,char *b){intk,i=strlen(a),j=strlen(b),c[N][N];k=lcs_len(a,b,c);s[k]=’\0’;while(k>0){if(c[i][j]==c[i-1][j])i--;……………………………..(11分)else if(c[i][j]==c[i][j-1]) j--;else{s[--k]=a[i-1];i--,j--;}}returns;……………………………..(15分)}5、解:int greedy(vecter<int>x,int n){int sum=0,k=x.size();for(int j=0;j<k;j++)if(x[j]>n){cout<<”No solution”<<endl;re tur n -1;……………………………..(6分) }for(int i=0,s=0;i<k ;i ++){ s+=x[i];if(s>n){ sum ++;s=x[i];}……………………………..(9分)}return sum;……………………………..(12分)} 6、解:此题用动态规划算法求解:i nt di st( ) {i nt m=a.si ze ( ); int n=b.s ize( );vec tor<i nt>d(n+1,0);for(int i =1;i<=n;i ++) d[i]=i;……………………………..(5分) f or(i=1;i<=m;i++){ int y=i -1;f or(int j =1;j<=n;j ++){ int x =y; y=d[j];int z=j>1?d[j-1]:i; ……………………………..(10分) int del=a[i-1]= =b[j-1]?0:1;d [j ]=min(x+d el,y+1,z+1); ……………………………..(13分) } }ret urn d[n]; ……………………………..(16分) }7、试用回溯法解决下列整数变换问题:关于整数的变换和定义如下:⎣⎦2/)(;3)(i i g i i f ==。
武汉工程大学大二计算机专业Java语言与面向对象程序设计考试试卷及参考答案4
武汉工程大学Java语言与面向对象程序设计考试试卷及参考答案4一、单项选择题(5’)1.下面类定义中哪一个定义了一个不允许有子类的类?()A、class Key {}B、abstract final class Key {}C、class Key {final;}D、final class Key {}答案:D2.下面程序的输出是()。
System.out.println(4 | 7);A、4B、5C、6D、7答案:D3.以下选项中,合法的赋值语句是()。
A、a==1B、++iC、a=a+1=5D、!(++a!=b--)答案:B4.下面语句序列执行后,a的值是()。
int a=13; a%=a/5;A、3B、13C、169D、1答案:D5.下面类定义中哪一个给出了合法的抽象类的定义?()A、abstract Animal {abstract void growl();}B、class abstract Animal {abstract void growl();}D、abstract class Animal{abstract void growl(){System.out.println("growl");}}答案:C6.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上()语句。
A、import java.awt.*B、import java.applet.*C、import java.io.*D、import java.awt.event.*答案:D7.下面程序的输出是()。
System.out.println(2 | 3);A、1B、2C、3D、4答案:C8.下面的语句的作用是:()。
Vector MyVector = new Vector(100,50);A、创建一个数组类对象MyVector,有100个元素的空间,每个元素的初值为50B、创建一个向量类对象MyVector,有100个元素的空间,每个元素的初值为50C、创建一个数组类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增D、创建一个向量类对象MyVector,有100个元素的空间,若空间使用完时,以50个元素空间单位递增答案:D9.下面程序段的输出结果是()。
2021-2022 年武汉工程大学《算法设计与分析》考试大纲
武汉工程大学计算机科学与工程学院《算法设计与分析》课程考试大纲一、课程名称:算法设计与分析二、适用专业:2019 级计算机科学与工程学院、人工智能学院相关专业三、开课学期:2021 – 2022 学年第 1 学期四、考试方式:笔试、闭卷五、组卷类型:题库调卷六、考试时间:120 分钟七、命题期望:70 分八、考试题型:1.算法应用:共40 分,2 个小题,每小题20 分。
2.分析题:共20 分,2 个小题,每小题10 分。
3.算法设计:共20 分,1 个小题,每小题20 分。
4.综合题:共20 分,1 个小题,每小题20 分。
九、知识点及考试要求:第一部分概论1. 熟悉算法的概念和常用描述工具2. 掌握算法性能分析的体系及计量3. 熟悉STL 的使用第二部分递归算法设计技术1. 熟悉递归的概念2. 掌握递归算法的归纳与设计3. 掌握简单递归算法的时间性能与空间性能的计算4. 熟悉简单递归算法的非递归转换第三部分蛮力法1. 熟悉蛮力法的概念2. 掌握用蛮力法求解的常见问题3. 掌握蛮力法中递归的运用第四部分贪心法1. 熟悉贪心法的概念与运用2. 掌握贪心法经典问题的求解第五部分分治法1. 熟悉分治法的概念和模型2. 掌握分治法的基础运用3. 掌握分治法常见问题求解第六部分动态规划1. 熟悉动态规划的概念2. 掌握动态规划的原理与求解步骤3. 掌握动态规划经典问题的求解第七部分回溯法1. 熟悉回溯法的概念与建模2. 掌握回溯法的框架与算法性能3. 掌握回溯法经典问题的求解第八部分分支限界法1. 熟悉分支限界的概念2. 熟悉队列式分枝限界法3. 熟悉优先队列式分枝限界法4. 掌握分支限界经典问题的求解第九部分概率算法和近似算法1. 掌握蒙特卡罗算法2. 掌握舍伍德算法3. 掌握拉斯维加斯算法4. 熟悉近似算法的应用第十部分计算复杂性简介1. 了解易解问题与难解问题2. 了解P 类问题与NP 问题、NP 完全问题十、其它:教科书中重点章节:第二章递归算法设计,第三章分治法,第四章蛮力法,第七章贪心法,第八章动态规划。
数据结构期终复习(答案)
武汉工程大学“精品课程”计算机科学与技术专业(本科)《数据结构与算法分析》课程考试说明与模拟试卷第一部分考试说明《数据结构与算法分析》是计算机科学与技术专业统设的一门重要的必修专业基础课,它主要研究数据的各种逻辑结构和在计算机中的存储结构,还研究对数据进行的插入、查找、删除、排序、遍历等基本运算或操作以及这些运算在各种存储结构上具体实现的算法。
由于本课程的主教材采用C++语言描述算法,期末卷面考试也采用C++语言描述,因而要求在做平时作业和上机实验操作时用C++开发工具(如:Visual C++或C++ Builder或Borland C++)。
下面按照主教材中各章次序给出每章的具体复习要求,以便同学们更好地进行期末复习。
第一章绪论重点掌握的内容:1. 数据结构的二元组表示,对应的图形表示,序偶和边之间的对应关系。
2. 集合结构、线性结构、树结构和图结构的特点。
3. 抽象数据类型的定义和表示方法。
4. 一维和二维数组中元素的按下标和按地址的访问方式以及相互转换,元素地址和数组地址的计算,元素占用存储空间大小和数组占用存储空间大小的计算。
5. 普通函数重载和操作符函数重载的含义,定义格式和调用格式。
6. 函数定义中值参数和引用参数的说明格式及作用,函数被调用执行时对传送来的实际参数的影响。
7. 算法的时间复杂度和空间复杂度的概念,计算方法,数量级表示。
8. 一个简单算法的最好、最差和平均这三种情况的时间复杂度的计算。
对于本章的其余内容均作一般掌握。
第二章线性表重点掌握的内容:1. 线性表的定义及判别和抽象数据类型的描述,线性表中每一种操作的功能,对应的函数名、返回值类型和参数表中每个参数的作用。
2. 线性表的顺序存储结构的类型定义,即List类型的定义和每个域的定义及作用。
3. 线性表的每一种运算在顺序存储结构上实现的算法,及相应的时间复杂度。
4.链接存储的概念,线性表的单链接和双链接存储的结构,向单链表中一个结点之后插入新结点或从单链表中删除一个结点的后继结点的指针链接过程。
《算法设计与分析》试卷及答案
《算法设计与分析》试卷及答案算法设计与分析考试复习试卷《算法设计与分析》试卷1一、多项选择题(每空2分,共20分):1、以下关于算法设计问题的叙述中正确的是__________。
A、计算机与数值问题的求解——方程式求根、插值问题、数值积分、函数逼近等有关B、利用计算机无法解决非数值问题C、计算机在解决分类、语言翻译、图形识别、解决高等代数和组合分析等方面的数学问题、定理证明、公式推导乃至日常生活中各种过程的模拟等问题中,主要进行的是判断、比较,而不是算术运算D、算法设计与分析主要研究对象是非数值问题,当然也包含某些数值问题2、算法的特征包括_________。
A、有穷性B、确定性C、输入和输出D、能行性或可行性3、以下描述是有关算法设计的基本步骤:①问题的陈述②算法分析③模型的拟制④算法的实现⑤算法的详细设计⑥文档的编制,应与其它环节交织在一起其中正确的顺序是__________。
A、①②③④⑤⑥B、①③⑤②④⑥C、②④①③⑤⑥D、⑥①③⑤②④4、以下说法正确的是__________。
A、数学归纳法可以证明算法终止性B、良序原则是证明算法的正确性的有力工具C、x = 小于或等于x的最大整数(x的低限)D、x = 小于或等于x的最大整数(x的高限)5、汉诺塔(Hanoi)问题中令h(n)为从A移动n个金片到C 上所用的次数,则递归方程为__________,其初始条件为__________,将n个金片从A柱移到C柱上的移动次数是__________;设菲波那契(Fibonacci)数列中Fn为第n个月时兔子的对数,则有递归方程为__________,其中F1=F2=__________。
A、Fn=Fn-1+Fn-2B、h(n)= 2h(n-1)+1C、1D、h(1)= 1E、h(n)=2n-1F、06、在一个有向连通图中(如下图所示),找出点A到点B的一条最短路为____ ______。
A、最短路:1→3→5→8→10,耗费:20B、最短路:1→4→6→9→10,耗费:16。
2023年武汉工程大学研究生考试自命题真题 836计算机综合I(数据结构、计算机组成原理)
武汉工程大学2023年全国硕士研究生招生考试考试科目代码及名称:836计算机综合I一、选择题(本大题共40小题,每小题2分,共80分)1.数据的四种存储结构是______。
A、顺序存储结构、链式存储结构、索引存储结构和散列存储结构B、线性存储结构、非线性存储结构、树型存储结构和图型存储结构C、集合存储结构、一对一存储结构、一对多存储结构和多对多存储结构D、顺序存储结构、树型存储结构、图型存储结构和散列存储结构2.下列函数中,n为问题规模,其对应的时间复杂度最小的是______。
n+7789nA、T1(n)=2023log2B、T2(n)=225nlogn-9978n2n+1117n2-5321nC、T3(n)=2023nlog2D、T4(n)=2023n3+31115n3.关于线性表的存储结构,以下叙述中错误的是______。
A、线性表的顺序存储结构中隐式地存储了数据元素之间的逻辑关系B、线性表的顺序存储结构一定需要占用一片连续的存储空间C、线性表的链式存储结构通过指针来反映数据元素之间的逻辑关系D、线性表的链式存储结构占用的存储空间一定不连续4.在一个有n个元素的顺序表中,随机删除一个元素,平均需要移动个元素______。
A、nB、n-1C、n/2D、(n-1)/25.在双向循环链表中删除指针D1指向结点(非两端结点),其中prev和next分别是指向对应结点的直接前驱和直接后继结点的指针,应执行的操作为______。
A、D1->prev->next=D1->next;D1->next->prior=D1->prior;B、D1->piev=D1->next;D1->next=D1->prior;C、D1->next->prio=D1->next;D1->next=D1->prior;D、D1->prior->next=D1->next;D1->prior=D1->next;6.下列关于“字符串”及其应用的叙述中不正确的是______。
算法设计与分析试卷(一)及答案.doc
算法设计与分析试卷(一)及答案算术分析试卷(卷一)课程名称算术分析编号问题编号1234总分评估师一、填空(每题3分,共30分)1.算法的优点和缺点可以用总和来衡量。
2.这种不断回头寻找目标的方法叫做。
3.直接或间接调用自己的算法称为。
4.q符号用算法复杂性的表示来表示。
5.分治法产生的子问题通常是它提供了使用的便利。
6.建立计算模型的目的是使。
7.以下步骤的顺序是。
①调试程序②分析问题③设计算法④编程。
8.最优子结构性质的含义是。
9.贪婪算法从初始阶段开始,每个阶段总是做出贪婪的选择。
10.拉斯维加斯算法一定找到了解决方案。
二、选择题(每题2分,共20分)1.霍夫曼编码可以用()算法实现。
分治策略b,动态规划方法c,贪婪方法d,回溯方法2、以下不是基本的计算模型()。
随机存取存储器、只读存储器、只读存储器3.在以下算法中,最佳解决方案通常是从上到下求解()。
一、分治法b、动态规划法c、贪心法d、回溯法考试科目: 类别:姓名:学生编号:-一、填空(每题3分,共30分)1.算法的优点和缺点可以用总和来衡量。
2.这种不断回头寻找目标的方法叫做。
3.直接或间接调用自己的算法称为。
4.q符号用算法复杂性的表示来表示。
5.分治法产生的子问题通常是它提供了使用的便利。
6.建立计算模型的目的是使。
7.以下步骤的顺序是。
①调试程序②分析问题③设计算法④编程。
8.最优子结构性质的含义是。
9.贪婪算法从初始阶段开始,每个阶段总是做出贪婪的选择。
10.拉斯维加斯算法一定找到了解决方案。
二、选择题(每题2分,共20分)1.霍夫曼编码可以用()算法实现。
分治策略b,动态规划方法c,贪婪方法d,回溯方法2、以下不是基本的计算模型()。
随机存取存储器、只读存储器、只读存储器3.在以下算法中,最佳解决方案通常是从上到下求解()。
一、分治法b、动态规划法c、贪心法d、回溯法考试科目:类别:姓名:学生编号:最佳解决方案是:参考答案我填补空白1.空间复杂性时间复杂性2.追溯方法3.递归算法4.渐进定边界还是紧致边界5、小模式递归技术的原始问题6.问题的计算复杂性分析有一个共同的客观标准。
《算法设计与分析》考试题目及答案(DOC)
cg(n) }; B. O(g(n)) = { f(n) | 存在正常数 c 和 n0 使得对所有 n n0 有:0 cg(n)
f(n) }; C. O(g(n)) = { f(n) | 对于任何正常数 c>0,存在正数和 n0 >0 使得对所有
12. k 带图灵机的空间复杂性 S(n)是指(B) A. k 带图灵机处理所有长度为 n 的输入时,在某条带上所使用过的最大方格
数。 B. k 带图灵机处理所有长度为 n 的输入时,在 k 条带上所使用过的方格数的
总和。 C. k 带图灵机处理所有长度为 n 的输入时,在 k 条带上所使用过的平均方格
cg(n) }; B. O(g(n)) = { f(n) | 存在正常数 c 和 n0 使得对所有 n n0 有:0 cg(n)
f(n) };
C. (g(n)) = { f(n) | 对于任何正常数 c>0,存在正数和 n0 >0 使得对所有 n n0 有:0 f(n)<cg(n) };
n n0 有:0 f(n)<cg(n) }; D. O(g(n)) = { f(n) | 对于任何正常数 c>0,存在正数和 n0 >0 使得对所有
n n0 有:0 cg(n) < f(n) };
15. 记号 的定义正确的是(B)。 A. O(g(n)) = { f(n) | 存在正常数 c 和 n0 使得对所有 n n0 有:0 f(n)
return b;
}
11. 用回溯法解布线问题时,求最优解的主要程序段如下。如果布线区域划分 为 n m 的方格阵列,扩展每个结点需 O(1)的时间,L 为最短布线路径的长度, 则算法共耗时 ( O(mn) ),构造相应的最短距离需要(O(L))时间。
武汉工程大学大二计算机专业C语言程序设计考试试卷及参考答案4
武汉工程大学C语言程序设计考试试卷及参考答案4一、单项选择题(5’)1、以下哪个不是关系运算符()。
A、=B、<C、<=D、!=答案:A2、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为()。
A、a<>0B、!aC、a=0D、a答案:D3、能正确表示a≥10或a≤0的关系表达式是()。
A、a>=10 or a<=0B、a>=10│a<=0C、a>=10││a<=0D、a>=10 ││a<=0答案:D4、a=1,b=2,c=3,d=4,下列条件表达式的值为()。
a>b?a:c>d?c:dA、1B、2C、3D、4答案:D5、下列运算符中优先级最低的是()。
A、?:B、+=C、>=D、==答案:B6、以下程序的运行结果是()。
main( ){int k=4,a=3,b=2,c=1;Printf(“\n%d\n”,k<a? k:c<b? c:a);}A、4B、3C、2D、1答案:D7、若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()。
A、int p=&x;B、int *p=x;C、int *p=&x;D、*p=*x;答案:C8、在C语言中()。
A、实参和与其对应的形参各占用独立的存储单元B、实参和与其对应的形参共占用一个存储单元C、只有当实参和与其对应的形参同名时才共占用存储单元D、形参是虚拟的,不占用存储单元答案:A9、以下对二维数组a 的正确说明是()。
A、int a[3][]B、float a(3,4)C、double a[1][4]D、float a(3)(4)答案:C10、若有以下定义,则能使值为3的表达式是()。
int k=7,x=12;A、x%=(k%=5)B、x%=(k-k%5)C、x%=k-k%5D、(x%=k)-(k%=5)答案:D11、经过以下语句定义后, 表达式z+=x>y?++x:++y 的值为()。
数据结构与算法在工程设计中的应用考核试卷
C.不存在子问题重叠的情况
D.通常用递归实现
12.以下哪些是图的遍历算法?()
A.深度优先搜索
B.广度优先搜索
C.最短路径算法
D.最小生成树算法
13.关于堆的说法,正确的是?()
A.堆是优先级队列的一种实现
B.堆是二叉树的一种
C.堆中的元素是按照完全二叉树存储的
D.堆的删除操作时间复杂度是O(n)
数据结构与算法在工程设计中的应用考核试卷
考生姓名:__________答题日期:__________得分:__________判卷人:__________
一、单项选择题(本题共20小题,每小题1分,共20分,在每小题给出的四个选项中,只有一项是符合题目要求的)
1.下列哪种数据结构适用于对数据进行排序操作?()
C.快速排序
D.插入排序
5.在散列表中解决冲突的常见方法有()。
A.开放地址法
B.链地址法
C.线性探测法
D.以上都对
6.在二叉树中,若一个节点的左子树和右子树都是二叉排序树,且左子树上所有节点的值都小于该节点的值,右子树上所有节点的值都大于该节点的值,则该二叉树被称为()。
A.完全二叉树
B.平衡二叉树
5.在动态规划中,一个问题的最优解包含其子问题的最优解。()
6.贪心算法总能得到问题的最优解。()
7.在图的邻接矩阵表示中,矩阵的对角线上的元素表示顶点到自身的权值。()
8.在Kruskal算法中,每次都选择权值最小的边加入森林。()
9.在Floyd-Warshall算法中,可以同时计算所有顶点对之间的最短路径。()
D.分治
16.下列哪种数据结构不适合实现优先级队列?()
武汉工程大学大二计算机专业C++程序设计考试试卷及参考答案4
武汉工程大学C++程序设计考试试卷及参考答案4一、单项选择题(5’)1.while(x)中的(x)与下面条件()等价。
A、x==1B、x!=1C、x!=0D、x==0答案:C2.下面四个选项中,均是不合法的用户标识符的选项是:A、A P_0 doB、float 1a0 _AC、b-a goto intD、_123 temp INT答案:C3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2中的值是()。
A、DB、68C、不确定的值D、C答案:A4.下列的符号常量定义中,错误的定义是()。
A、const M=10;B、const int M=20;C、const char ch;D、const bool mark=true;答案:C5.逻辑运算符两侧运算对象的数据类型:A、只能是0或1B、只能是0或非0正数C、只能是整型或字符型数据D、可以是任何类型的数据答案:D6.设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型是()。
A、intB、floatC、doubleD、不确定答案:C7.C++源程序文件的默认扩展名是()。
A、cppB、exeC、objD、lik答案:A8.下列运算符中优先级最高的是()。
A、<B、+C、&&D、!=答案:B9.设array为一个数组,则表达式sizeof(array)/sizeof(array[0])的结果为()。
A、array数组首地址B、array数组中元素个数C、array数组中每个元素所占的字节数D、array数组占的总字节数答案:B10.设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是()。
A、2B、-1C、0D、1答案:C11.下面不正确的字符串常量是()。
A、abc'B、"12'12"C、"0"D、""答案:A12.在下面循环语句中循环体执行的次数为()。