中南民族大学算法复习资料(习题-中文版)
中南民族大学 10套计算机C语言 期末考试复习试题及答案

一、判断共10题(共计10分)第1题(1.0分)题号:1488函数即可以嵌套定义,又可以嵌套调用.答案:N第2题(1.0分)题号:1256unsigned 和void 在C中都是保留字.答案:Y第3题(1.0分)题号:1280表达式++i表示对变量i自加1.答案:Y第4题(1.0分)题号:1282C语言源程序的基本结构单位是main函数.答案:N第5题(1.0分)题号:1276字符常量的长度肯定为1.答案:Y第6题(1.0分)题号:1469char a[]={'a','b','c'};char b[]={"abc"};数组a和数组b占用的内存空间大小不一样. 答案:Y第7题(1.0分)题号:1249若有int i=10,j=2; 则执行完i*=j+8;后i的值为28.答案:N第8题(1.0分)题号:33int i,*p=&i;是正确的C说明。
答案:Y第9题(1.0分)题号:1250While循环语句的循环体至少执行一次.答案:N第10题(1.0分)题号:1510有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0.答案:Y二、单项选择共30题(共计30分)第1题(1.0分)题号:456执行下面程序后,输出结果是()。
main(){ a=45,b=27,c=0;c=max(a,b);printf("%d\n",c);}int max(x,y)int x,y;{ int z;if(x>y) z=x;else z=y;return(z);}A:45B:27C:18D:72答案:A第2题(1.0分)题号:437下列数组说明中,正确的是()。
A:int array[][4];B:int array[][];C:int array[][][5];D:int array[3][];答案:A第3题(1.0分)题号:2396下面有关for循环的正确描述是()A:for循环只能用于循环次数已经确定的情况B:for循环是先执行循环体语句,后判断表达式C:在for循环中,不能用break语句跳出循环体D:for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来答案:D第4题(1.0分)题号:2817以下程序的输出结果是().main(){int i,j,k,a=3,b=2;i=(--a==b++)?--a:++b;j=a++;k=b;printf("i=%d,j=%d,k=%d\n",i,j,k);}A:i=2,j=1,k=3B:i=1,j=1,k=2C:i=4,j=2,k=4D:i=1,j=1,k=3答案:D第5题(1.0分)题号:2866若有下列定义,则对a数组元素地址的正确引用是().int a[5],*p=a;A:*(p+5)B:*p+2C:*(a+2)D:*&a[5]答案:C第6题(1.0分)题号:711下列选项中正确的语句组是()。
算法导论复习资料

算法导论复习资料一、选择题:第一章的概念、术语。
二、考点分析:1、复杂度的渐进表示,复杂度分析。
2、正确性证明。
考点:1)正确性分析(冒泡,归并,选择);2)复杂度分析(渐进表示O,Q,©,替换法证明,先猜想,然后给出递归方程)。
循环不变性的三个性质:1)初始化:它在循环的第一轮迭代开始之前,应该是正确的;2)保持:如果在循环的某一次迭代开始之前它是正确的,那么,在下一次迭代开始之前,它也应该保持正确;3)当循环结束时,不变式给了我们一个有用的性质,它有助于表明算法是正确的。
插入排序算法:INSERTION-SORT(A)1 for j ←2 to length[A]2 do key ←A[j]3 ▹Insert A[j] into the sorted sequence A[1,j - 1].4 i ←j - 15 while i > 0 and A[i] > key6 do A[i + 1] ←A[i]7 i ←i - 18 A[i + 1] ←key插入排序的正确性证明:课本11页。
归并排序算法:课本17页及19页。
归并排序的正确性分析:课本20页。
3、分治法(基本步骤,复杂度分析)。
——许多问题都可以递归求解考点:快速排序,归并排序,渐进排序,例如:12球里面有一个坏球,怎样用最少的次数找出来。
(解:共有24种状态,至少称重3次可以找出不同的球)不是考点:线性时间选择,最接近点对,斯特拉算法求解。
解:基本步骤:一、分解:将原问题分解成一系列的子问题;二、解决:递归地解各子问题。
若子问题足够小,则直接求解;三、合并:将子问题的结果合并成原问题的解。
复杂度分析:分分治算法中的递归式是基于基本模式中的三个步骤的,T(n)为一个规模为n的运行时间,得到递归式T(n)=Q(1) n<=cT(n)=aT(n/b)+D(n)+C(n) n>c附加习题:请给出一个运行时间为Q(nlgn)的算法,使之能在给定的一个由n个整数构成的集合S和另一个整数x时,判断出S中是否存在有两个其和等于x的元素。
算法设计与分析实验报告(中南民族大学)

院系:计算机科学学院专业:年级:课程名称:算法设计与分析基础班号:组号:指导教师:年月日实验结果及分析1.求最大数2.递归法与迭代法性能比较递归迭代3.改进算法1.利用公式法对第n项Fibonacci数求解时可能会得出错误结果。
主要原因是由于double类型的精度还不够,所以程序算出来的结果会有误差,要把公式展开计算。
2.由于递归调用栈是一个费时的过程,通过递归法和迭代法的比较表明,虽然递归算法的代码更精简更有可读性,但是执行速度无法满足大数问题的求解。
3.在当前计算机的空间较大的情况下,在一些速度较慢的问题中,空间换时间是一个比较周全的策略。
实验原理(算法基本思想)定义:若A=(a ij), B=(b ij)是n×n的方阵,则对i,j=1,2,…n,定义乘积C=A⋅B 中的元素c ij为:1.分块解法通常的做法是将矩阵进行分块相乘,如下图所示:二.Strassen解法分治法思想将问题实例划分为同一问题的几个较小的实例。
对这些较小实例求解,通常使用递归方法,但在问题规模足够小时,也会使用另一种算法。
如果有必要,合并这些问题的解,以得到原始问题的解。
求解矩阵相乘的DAC算法,使用了strassen算法。
DAC(A[],B[],n){If n=2 使用7次乘法的方法求得解ElseDivide(A)//把A分成4块Divide(B)//把B分成4块调用7次strassen算法求得解的4块合并这4块得到解并返回}伪代码Serial_StrassenMultiply(A, B, C) {T1 = A0 + A3;T2 = B0 + B3;StrassenMultiply(T1, T2, M1);T1 = A2 + A3;StrassenMultiply(T1, B0, M2);T1 = (B1 - B3);StrassenMultiply (A0, T1, M3);T1 = B2 - B0;StrassenMultiply(A3, T1, M4);T1 = A0 + A1;StrassenMultiply(T1, B3, M5);T1 = A2 – A0;T2 = B0 + B1;StrassenMultiply(T1, T2, M6);T1 = A1 – A3;T2 = B2 + B3;StrassenMultiply(T1, T2, M7);C0 = M1 + M4 - M5 + M7C1 = M3 + M5C2 = M2 + M4C3 = M1 - M2 + M3 + M6}实验结果及分析时间复杂度1.分块相乘总共用了8次乘法,因而需要Θ(n log28)即Θ(n3)的时间复杂度。
专业算法复习题一.docx

int main()
{
int i,aver,a[10],sum=0,n=0;
for(i=l;i<10;i++)
scanff%d”,&a[i]);
ifi[a[i]>0&&a[i]%2==0)
{
sum=sum+a[i];
n++;
}
avcr=sum/n;
printf(,'aver=%d\n",aver);
A.1个B.2个
C.4个D.8个
5.下列表达式屮运算结果为3的表达式是(B)
A.(-7)%4B.7/4+2
C.7/4*4-4D.8/3+8/3
6.设有int a=3,b=-4, c=5;表达式a4"+・c+b++的值是(C )
A.・6B.・5
C・-4D.・3
7.在printf语句屮,格式说明符u表示(C)
专业算法复习题一
—S
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的
括号内。错选.多选或未选均无分。
6•下面转义字符屮,表示字符串结束的是(C)
B.\ n
DAf
7.在VC屮,若定义unsigned int a;则变最a在内存屮分配的字节数是(C)
A」个B.2个
C.4个D.8个
9.关于switch屮的表达式,正确的说法是(D)
A.它必须是算术表达式B.它必须是关系表达式
C.它必须是逻辑表达式D.它可以是任意类型的表达式
10.对do语句while(表达式);结构的循环,下列说法正确的是(B)
中南民族大学算法复习资料(习题-中文版)

中南民族大学算法复习资料(习题-中文版)一,选择题1,下列公式可被视为一个计算三角形面积的一面正数X,Y和Z的长度的算法?()(一)=√L(L - X)(L- Y)(L- Z),其中L =(X,Y,Z)/ 2 (二),S = 1/2 yzsinA,其中A是双方Y和Z之间的角度(三),S = 1/2 XH,其中h是高度基地x (四)以上都不可以被认为是算法2,在功能的四对,对有增长的顺序不同?()(一)(N31)5√n和√(N7 N)(二)log22n和log2n2 (三)log10n和LN?(四)5N- 1和5N13,关于渐近符号下面的描述哪些是正确的?()(一)为O(F(N))的所有功能,具有较大的增长相同的顺序为F(N)(二)Θ(F(n))的增长相同的顺序为F(N)的所有功能设置(三)Ω(F(N))是所有功能的设置相同或较小的增长为F的顺序(N)(四)以上都不是正确的 4,多少比较会受到蛮力字符串匹配算法的搜索模式=“00... ...0(M - 1个)”,在文本=“00... ...0(N个)\(一)(1纳米)米(B)1纳米(三)(NM)M(四)纳米5,关于归并排序和快速排序的以下断言哪个是假?()(一)在最好的情况下,合并排序的时间效率是Ω(nlogn)(二)快速排序在最坏情况下的时间效率是O(nlogn)(三)合并排序在最坏情况下的时间效率是Ω(nlogn)(四)在平均情况下的快速排序的时间效率是Θ(nlogn)6,下列哪项是堆?()10 7 5 8 8 8 5 5 7 5 7 4 2 1 4 6 2 1 4 2 17,以下问题不能使用广度优先搜索算法解决?()(一)找到两个给定一个图的顶点之间的数量最少的边的路径(b)检查图acyclicity(c)寻找一个无向图的关节点(d)检查图的连通8,下面的算法属于可变大小减少技术(?)(一)二进制搜索(二)插值搜索(三)顺序搜索(d)俄罗斯农民的方法followting算法计算二项式系数是最有效的呢?(9)(a)适用于动态规划算法(b)申请递归的fomulaC组(n,K)= C(N- 1,K- 1)+(N - 1,K)N> K>0 C组(n,0)= C(N,N)= 0(三)利用公式C(N,K)= N!/ K!(N- K)!(d)使用公式C(N,K)= N(N - 1)... ...(N - K +1)/ K!10,下列哪项是真的吗?()(一)如果e是一个连接加权图的最低weighe边缘,必须至少有一个最小生成树的图的树边之间。
算法_第四版_习题_答案

算法第四版习题答案1.2/** 1.2.1 编写一个Point2D的用例,从命令行接受一个整数N。
在单位正方形内生成N个随机点,然后计算两点之间的最近距离*/public class testPoint2D {public testPoint2D() {// TODO Auto-generated constructor stub}public static void drawbox(double bw, double bh){StdDraw.setPenRadius(0.005);StdDraw.setPenColor(StdDraw.RED);Interval1D xinterval = new Interval1D(0, bw);Interval1D yinterval = new Interval1D(0, bh);Interval2D box = new Interval2D(xinterval, yinterval);box.draw();}public static Point2D[] drawpoint(int N){Point2D[] p=new Point2D[N];for(int i=0;i<N;i++){double x=Math.random();double y=Math.random();p[i]=new Point2D(x, y) ;p[i].draw();}return p;}public static double findmindist(Point2D[] p){Point2D p1=p[0];Point2D p2=p[1];double mindist =p[0].distanceTo(p[1]);StdDraw.setPenRadius(0.002);StdDraw.setPenColor(StdDraw.RED);int n=p.length ;for(int i=1;i<n-1;i++)for(int j=i+1;j<n;j++){double temp=p[i].distanceTo(p[j]);if(temp<mindist){ mindist=temp;p1=p[i];p2=p[j];}}p1.drawTo(p2);StdOut.print("min dist="+mindist +p1.toString()+p2.toString());return mindist;}public static void main(String[] args) {int N=StdIn.readInt();//读取画点的数量//StdDraw.setXscale(0,1 );//StdDraw.setYscale(0,1);drawbox(1,1);//画出一个单位大小的正方形StdDraw.setPenRadius(0.01);StdDraw.setPenColor(StdDraw.BLACK);//drawpoint(N);//画出N个点double min=findmindist(drawpoint(N));}}/** 编写一个Interval1D的用例,从命令行接受一个整数N。
中南民族大学-软件工程复习题

软工复习题1.软件是一种(B)实体,具有抽象性。
A.有形B.逻辑C.物理D.消耗2.就内容来看,软件工程应包括三个要素,它们是(C)(1)方法。
(2)工具。
(3)产品。
(4)过程A.(1)(2)(3) B. (2)(3)(4) C. (1)(2)(4) D. (1)(3)(4)3.软件工程模型有多种,下列选项中,(C)不是软件工程模型。
A.螺旋模型 B. 增量模型 C. 功能模型 D. 破布模型4.软件生存周期包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、(B)、维护等活动。
A.应用 B. 测试 C. 检测 D. 以上答案都不正确5.实体模型的三个基本组成成为是实体、联系和(B)A.模型B.属性C.特征D.事务6.数据流图中的基本符号有(D)A.变换、加工、数据流和存储。
B.输入、输出、外部实体和加工。
C.变换、数据存储、加工和数据流。
D.数据的源点或终点、数据流、数据存储和加工。
7.在数据流图中,有名字及方向的成分是(C)A.控制流 B. 信息流 C. 数据流 D. 信号流8.需求分析阶段研究的对象是软件项目的(A)A.用户要求 B. 合理要求 C. 模糊要求 D. 技术人员要求9.软件需求规格说明书的内容不应该包括对(B)的描述A.主要功能 B. 算法的详细过程 C. 用户的界面及运行环境 D. 软件的性能10.状态迁移图是一种描述系统状态随(A)进行迁移的有效的图形手段。
A.外部信号或事件 B. 数据 C. 时间 D. 信息11.(C)是数据流图中数据结构的操作。
A.数据流 B. 数据流量 C. 数据文件 D. 数据项12.软件设计阶段一般又可分为(B)A.逻辑设计与功能设计 B.概要设计与详细设计C.概念设计与物理设计 D. 模型设计与程序设计13.研究开发所需要的成本与资源是属于可行性研究中的(B)研究的一方面A.技术可行性 B. 经济可行性 C. 社会可行性 D. 法律可行性14.瀑布模型本质上是一种(A)A.线性顺序模型 B. 顺序迭代模型 C. 线性迭代模型 D. 及早见产品模型15.好的软件结构应该是(B)A.高耦合,高内聚 B. 低耦合,高内聚 C. 高耦合,低内聚 D. 低耦合,低内聚16.划分模块时,一个模块的(A)A.作用域应该处于其控制范围之内B.控制域应该处于其作用域之内C.作用域与控制域互不包含D.作用域与控制域不受任何限制17.(C)用于说明软件中各个模块的功能、性能及接口。
3.2.1《算法》-课后作业 粤教版(2019)-信息技术-数据与计算必修1

《算法》作业一、选择题1. 在算法分析中,时间复杂度是指:A. 算法所需的最大存储空间B. 算法执行所需的时间与输入规模的关系C. 算法的可读性D. 算法的正确性答案:B解析:时间复杂度是衡量算法运行时间随输入规模增长而变化的趋势,通常使用大O符号表示。
2. 以下哪种排序算法的平均时间复杂度为O(n log n)?A. 冒泡排序B. 插入排序C. 快速排序D. 选择排序答案:C解析:快速排序在平均情况下的时间复杂度为O(n log n),是高效的排序算法之一。
3. 在图论中,最短路径问题可以通过以下哪种算法求解?A. 深度优先搜索(DFS)B. 广度优先搜索(BFS)C. Dijkstra算法D. A算法答案:C解析:Dijkstra算法是解决单源最短路径问题的经典算法,适用于带权有向图和无向图。
4. 在动态规划中,状态转移方程用于描述:A. 问题的初始状态B. 问题的边界条件C. 子问题之间的递推关系D. 问题的最优解答案:C解析:状态转移方程是动态规划的核心,它描述了如何从当前状态推导出下一个状态,即子问题之间的递推关系。
5. 在贪心算法中,每一步选择都是基于:A. 全局最优解B. 局部最优解C. 随机选择D. 固定策略答案:B解析:贪心算法在每一步都做出当前看起来最优的选择,即局部最优解,希望这样能导致全局最优解。
6. 在回溯算法中,剪枝操作的目的是:A. 减少递归深度B. 提高算法效率C. 避免重复计算D. 以上所有答案:D解析:剪枝操作在回溯算法中用于跳过不可能产生可行解或更优解的分支,从而减少不必要的计算,提高算法效率。
二、填空题7. 在算法设计中,_______是评价算法性能的重要指标之一,它反映了算法执行速度随输入规模增长的变化趋势。
答案:时间复杂度解析:时间复杂度是衡量算法执行速度的重要指标,它随着输入规模的增加而变化。
8. 冒泡排序是一种简单的排序算法,它通过重复交换相邻的_______来对一列数字进行排序。
算法试卷中南民族大学

算法试卷中南民族大学一、选择题1、Whichof the following formulas can be considered an algorithm for computing the area of triangle whose side lengths are given positive numbers x,y and z?( )(A) S=√l(l-x)(l-y)(l-z) ,where l=(x+y+z)/2(B)S=1/2 yzsinA, where A is the angle between sides y and z(C)S=1/2 xh,where h is the height to base x(D)None of above can be considered an algorithm2、、Among the four pairs of functions,which pair has different order of growth?()(A) (n3+1)5√n and √(n7+n) (B) log22n and log2n2(C) log10n and ln n (D) 5n-1 and 5n+13、Which of the following description about asymptotic notation is correct?( )(A) O(f(n)) is the set of all functions with a larger of same order of growth as f(n)(B)Θ(f(n)) is the set of all functions that have the same order of growth as f(n)(C)Ω(f(n)) is the set of all functions with a smaller or same order of growth as f(n)(D) None of above is correct4、How many comparisons will be made by the brute-force string match algorithm to search the pattern=”00……0(m-1个)” in the text=”00……0(n个)”?()(A)(n-m+1)m(B)n-m+1 (C)(n-m)m (D) n-m5、Which of the following assertions about mergesort and quicksort is false?()(A)The time efficiency of merge-sort in the best case isΩ(nlogn)(B)The time efficiency of quick-sort in the worst case is O(nlogn)(C)The time efficiency of merge-sort in the worst case is Ω(nlogn)(D)The time efficiency of quick-sort in the average case is Θ(nlogn)6、Which of the following is a heap?( )7、Which of the following problems can not be solved by using Breadth-First Search algorithm?( )(A)Finding a path with the fewest number of edges between two given vertices of a graph(B)Check acyclicity of graph(C)Finding articulation points of an undirected graph(D)Check connectivity of a graph8、Which of the following algorithms belongs to variable-size-decrease technique?()(A)Binary search (B)Interpolation search(C)Sequential search (D)Russian peasant method9、Which of the followting algorithms for computing a binomial coefficient is most efficient?( )(A)Apply the dynamic programming algorithm(B)Apply recursively the fomulaC(n,k)=C(n-1,k-1)+C(n-1,k) for n>k>0 Array C(n,0)=C(n,n)=0(C)Use the formula C(n,k)=n!/k!(n-k)!(D)Use the formula C(n,k)=n(n-1)……(n-k+1)/k!10、Which of the following statements is true?( )(A)If e is a minimum-weighe edge in a connected weighted graph,it must be among edgesof at least one minimum spanning tree of the graph.(B)If edge weights of a connected weighted graph are not alldistinct,the graph musthave more than one minimum spanning tree.(C)If e is a minimum-weighe edge in a connected weighted graph,it must be among edgesof each minimum spanning tree of the graph.(D)None of above is correct.二、填空题(1)Given a recourrence T(n)=9T(n/3)+n^2,T(1)=3,the roder of growth for solutions of therecourrence is_______.(Using the asymptotic notation⊙)(2) A djacency matric and__________are the two data structures to store or represent a graph.(3)The number of multiplications made by Strasse’s matrix multiplication algorithmis__________.(4)There are three variations of Decrease-and-conquer technique; Decrease-by-a-constant,_____and Variable-size-decrease.(5)(6)The solution of the Josephus problem for n=47 is J(n) =____________.(7)There are three variations of Transform-and-Conquer technique:___________、Represention-change and Problem-reduction.(8)Apply Homer’s rule to evaluate the polynomial p(x)=3x^4-x^3+2x^2+x+5 at a specific x。
算法导论习题答案

算法导论习题答案算法导论习题答案算法导论是一本经典的计算机科学教材,讲述了算法设计与分析的基本原理。
在学习过程中,习题是不可或缺的一部分,通过解答习题可以帮助我们巩固所学的知识。
本文将针对算法导论中的一些习题进行解答,帮助读者更好地理解算法导论的内容。
习题1-1:证明对于任意两个实数a和b,有|a + b| ≤ |a| + |b|。
解答:根据绝对值的定义,我们可以将|a + b|、|a|和|b|分别表示为以下三种情况:1. 当a + b ≥ 0,a ≥ 0,b ≥ 0时,|a + b| = a + b,|a| = a,|b| = b。
此时,|a + b| ≤ |a| + |b| 成立。
2. 当a + b < 0,a < 0,b < 0时,|a + b| = -(a + b),|a| = -a,|b| = -b。
此时,|a + b| ≤ |a| + |b| 成立。
3. 当a + b ≥ 0,a < 0,b < 0时,|a + b| = a + b,|a| = -a,|b| = -b。
此时,|a + b| ≤ |a| + |b| 成立。
综上所述,无论a和b的取值如何,都有|a + b| ≤ |a| + |b| 成立。
习题2-1:证明插入排序的运行时间是O(n^2)。
解答:插入排序是一种简单直观的排序算法,它的基本思想是将待排序的元素一个个地插入到已排好序的序列中。
在最坏情况下,即待排序的序列是逆序排列时,插入排序的运行时间最长。
假设待排序的序列长度为n,那么第一次插入需要比较1次,第二次插入需要比较2次,依次类推,第n次插入需要比较n-1次。
总的比较次数为1 + 2 + 3+ ... + (n-1) = n(n-1)/2。
因此,插入排序的运行时间是O(n^2)。
习题3-1:证明选择排序的运行时间是O(n^2)。
解答:选择排序是一种简单直观的排序算法,它的基本思想是每次从待排序的序列中选择最小的元素,放到已排序序列的末尾。
2022年中南民族大学公共课《大学计算机基础》期末试卷B(有答案)

2022年中南民族大学公共课《大学计算机基础》期末试卷B(有答案)一、单项选择题1、二进制数101101.11对应的十六进制数是()A.2D.3B.B1.CC.2D.C D.2、十进制数27转换成二进制数是()A.1011B.1101C.10111D.110113、二进制数11111110B等值的十进制数是()A.254B.252C.154D.2444、八进制数453转换成十进制数是()A.324B.267C.299D.2655、以下4项中,不属于计算机病毒特征的是()A.潜伏性B.传染性C.激发性D.免疫性6、标准的ASCII码共有()A256个 B 255个 C127个 D 128个7、下列选项中,均属于计算机输出设备的是()A.喷墨打印机、显示器和键盘B.激光打印机、键盘和鼠标C.键盘、鼠标和扫描仪D.打印机、绘图仪和显示器8、在Windows 7“回收站”中,可以恢复()A.从硬盘中删除的文件和文件夹B.从光盘中刷除的文件和文件夹C.从软盘中删除的文件和文件夹D.剪切掉的文挡9、Windows 7操作系统的作用是()A. 对用户存储的文件进行管理,方便用户B. 对计算机系统的硬件资源和软件资源进行控制和有效的管理,合理地组织计算机的工作流程,以充分发挥计算机系统的工效和方便用户使用计算机C. 执行用户键入的各类命令D. 是为汉字操作系统提供运行的基础10、在Windows 7的对话框中,下拉框是一个方框,并在右边有一个()A.向下的黑三角标志B.横向的省略号标志C.颜色变灰的标志D.向右的三角形标志11、Windows 7 安装所需最少硬盘容量为()A. 400MBB. 850MBC. 1000MBD. 1200MB12、在Windows 7 中,下列字符不能出现在文件名中的是()A: B.$ C.空格 D. +13、在Windows 7提供了各种系统工具,其中可以检查、诊断和修复各种类型磁盘损坏错误的是()A.磁盘扫描程序B.磁盘空间管理程序C.磁盘碎片整理程序D.备份程序14、在Word 2010文档中插入分节符,便于实现()A.修改文档B.创建文档目录C.阅读文档D.创建不同的页眉15、在Word 2010编辑文档时,所见即所得的视图是()A.草稿视图B.页面视图C.大纲视图D.Web版式视图16、在Word中,若要将当前编辑的文档存为扩展名是TXT的文件,可在“另存为”对话框的“保存类型”列农根中选择()A.RTF格式B.纯文本C.Word文档D.文档模板17、下列有关Word 2010中进行的格式设置,可在“段落”对话框中实现的是()A.字号设置为四号B.设置行距为1.5倍C.设置字符间距为加宽1.8磅D.将段落分成等宽的3栏18、若要调整Word文档段落的左右边界及缩进量.快捷方便的是利用()A.菜单命令B.“常用”工具栏C.“格式”工具栏D.“标尺”19、在Word2010中进行编辑时,需将选定区域的内容放到剪贴板上,可使用()A.“剪切”或“替换”操作B.“复制”或“粘贴”操作C.“复制”或“剪切”操作D.“剪切”或“粘贴”操作20、有一图书库存管理Excel 2010工作表,数据清单字段名有图书编号、书名、出版社名称、出库数量、入库数量、库存数。
2022年中南民族大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)

2022年中南民族大学数据科学与大数据技术专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、关于LRU算法,以下论述正确的是()。
A.LRU算法替换掉那些在Cache中驻留时间最长且未被引用的块B.LRU算法替换掉那些在Cache中驻留时间最短且未被引用的块C.LRU算法替换掉那些在Cache中驻留时间最长且仍在引用的块D.LRU算法替换掉那些在Cache中驻留时间最短且仍在引用的块2、某计算机主存按字节编址,由4个64M×8位的DRAM芯片采用交叉编址方式构成,并与宽度为32位的存储器总线相连,主存每次最多读写32位数据。
若double型变量x 的主存地址为80400lAH,则读取x需要的存储周期数是()。
A.1B.2C.3D.43、float类型(即IEEE754标准中的单精度浮点数格式)能表示的最大整数是()。
A.2126-2103B.2127-2104C.2127-2105D.2128-21044、加法器采用先行进位的根本目的是()。
A.优化加法器的结构B.快速传递进位信号C.增强加法器的功能D.以上都不是5、在C语言程序中,下列表达式中值为True的有()。
I.123456789=(int)(float)l23456789Ⅱ.123456==(int)(float)1234561Ⅲ.123456789-(int(double)123456789A.仅I、ⅡB. 仅I、ⅢC.仅Ⅱ、ⅢD. I、Ⅱ、Ⅲ、6、总线宽度与下列()有关。
A.控制线根数B.数据线根数C.地址线根数D.以上都不对7、在下面描述的PCI总线的基本概念中,不正确的表述是()。
A.PCI总线支持即插即用B.PCI总线可对传输信息进行奇偶校验C.系统中允许有多条PCI总线D.PCI设备一定是主设备8、假设基准程序A在某计算机上的运行时间为100s,其中90s为CPU时间,其余为/O 时间。
若CPU速度提高50%,V/O速度不变,则运行基准程序A所耗费的时间是()。
算法复习资料

算法复习资料算法复习资料在计算机科学领域,算法是解决问题的一种方法或步骤的描述。
它是计算机程序的核心,能够将输入转化为输出。
在学习算法时,复习资料是非常重要的。
本文将介绍一些算法复习资料,帮助读者更好地理解和掌握算法。
一、经典教材1.《算法导论》《算法导论》是由Thomas H. Cormen等人编写的经典教材。
该书详细介绍了各种常见的算法和数据结构,并提供了丰富的习题和案例分析。
它是学习算法的必备教材之一,深受学术界和工业界的推崇。
2.《算法》《算法》是由Robert Sedgewick和Kevin Wayne合著的教材。
该书以Java语言为基础,介绍了常见的算法和数据结构,并提供了大量的实例和习题。
它注重实践与理论的结合,适合初学者入门。
二、在线资源1.算法可视化网站有一些在线网站提供了算法的可视化展示,帮助读者更直观地理解算法的执行过程。
例如,VisuAlgo网站提供了各种算法的可视化演示,包括排序、图算法等。
这种可视化方式能够帮助读者更好地理解算法的思想和执行过程。
2.算法题库在线的算法题库是练习算法的好地方。
LeetCode、HackerRank和Codeforces 等网站提供了大量的算法题目,涵盖了各种难度和类型的题目。
通过解答这些题目,读者可以提高自己的算法能力和编程技巧。
三、MOOC课程1.《算法设计与分析》(Algorithm Design and Analysis)该课程由斯坦福大学提供,通过视频和作业的形式介绍了常见的算法和数据结构。
课程内容涵盖了排序、查找、图算法等,并提供了大量的编程实践。
这门课程适合有一定编程基础的学习者。
2.《算法与数据结构》(Algorithms and Data Structures)该课程由普林斯顿大学提供,通过视频和课件的形式讲解了常见的算法和数据结构。
课程内容包括排序、查找、图算法等,并提供了大量的编程实践。
这门课程适合初学者入门。
四、实践项目在学习算法的过程中,实践是非常重要的。
算法设计与分析基础课后习题答案(中文版)

令 c1=min(a1,b1),c2=max(a2,b2) ,则
C1*(g1+g2)<= t 1(n)+t 2(n) <=c2(g1+g2)-----(3)
不失一般性假设 max(g1(n),g2(n))=g1(n).
显然, g1(n)+g2(n)<2g1(n) ,即 g1+g2<2max(g1,g2)
If l=r return A[l]
Else temp1 ←Min2(A[l..(l+r)/2])
Temp2 ←Min2(A[l..(l+r)/2]+1..r)
If temp1
≤temp2 return temp1
Else return temp2
a. 建立该算法所做的的操作次数的递推关系并求解
b. 算法 Min1 和 Min2 哪个更快 ?有其他更好的算法吗 ?
b.该算法不稳定 .比如对列表 ‖2,2* ‖排序 c.该算法不在位 .额外空间 for S and Count[] 4.(古老的七桥问题 )
3
习题 1.4 1.请分别描述一下应该如何实现下列对数组的操作 ,使得操作时间不依赖数组的长度 . a.删除数组的第 i 个元素 (1<=i<=n) b.删除有序数组的第 i 个元素 (依然有序 ) hints: a. Replace theith element with the last element and decrease the array size of 1 b. Replace theith element with a special symbol that cannot be a value of the array’s element(e.g., 0 for an array of positive numbers ) to mark thei th position is empty. (―lazy deletion‖)
算法设计与分析复习题目及答案

算法设计与分析复习题目及答案一、算法的基本概念1、什么是算法?算法是指解决特定问题的一系列明确步骤,它具有确定性、可行性、有穷性、输入和输出等特性。
例如,计算两个数的最大公约数的欧几里得算法,就是通过反复用较小数去除较大数,然后将余数作为新的较小数,直到余数为 0,此时的除数就是最大公约数。
2、算法的复杂度包括哪些?它们的含义是什么?算法的复杂度主要包括时间复杂度和空间复杂度。
时间复杂度是指算法执行所需要的时间量,通常用大 O 记号来表示。
例如,一个算法的时间复杂度为 O(n),表示其执行时间与输入规模 n成正比。
空间复杂度则是算法在运行过程中所需要的额外存储空间的大小。
比如说,一个算法需要创建一个大小为 n 的数组来存储数据,那么其空间复杂度就是 O(n)。
二、分治法1、分治法的基本思想是什么?分治法的基本思想是将一个规模为 n 的问题分解为 k 个规模较小的子问题,这些子问题相互独立且与原问题结构相同。
然后分别求解这些子问题,最后将子问题的解合并得到原问题的解。
2、请举例说明分治法的应用。
例如归并排序算法。
将一个未排序的数组分成两半,对每一半分别进行排序,然后将排好序的两部分合并起来。
其时间复杂度为 O(nlogn),空间复杂度为 O(n)。
三、动态规划1、动态规划的基本步骤有哪些?动态规划的基本步骤包括:(1)定义问题的状态。
(2)找出状态转移方程。
(3)确定初始状态。
(4)计算最终的解。
2、解释最长公共子序列问题,并给出其动态规划解法。
最长公共子序列问题是指找出两个序列的最长公共子序列的长度。
假设我们有两个序列 X 和 Y,用 dpij 表示 X 的前 i 个字符和 Y 的前 j 个字符的最长公共子序列长度。
状态转移方程为:如果 Xi 1 == Yj 1,则 dpij = dpi 1j 1 + 1否则 dpij = max(dpi 1j, dpij 1)四、贪心算法1、贪心算法的特点是什么?贪心算法在每一步都做出当前看起来最优的选择,希望通过这种局部最优选择达到全局最优解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一,选择题
1,下列公式可被视为一个计算三角形面积的一面正数X ,Y 和Z 的长度的算法?()
(一)=√L (L - X )(L- Y )(L- Z ),其中L =(X ,Y ,Z )/ 2
(二),S = 1/2 yzsinA ,其中A 是双方Y 和Z 之间的角度
(三),S = 1/2 XH ,其中h 是高度基地x
(四)以上都不可以被认为是算法
2,在功能的四对,对有增长的顺序不同?()
(一)(N31)5√n 和√(N7 N )(二)log22n 和log2n2
(三)log10n 和LNñ(四)5N- 1和5N1
3,关于渐近符号下面的描述哪些是正确的?()
(一)为O (F (N ))的所有功能,具有较大的增长相同的顺序为F (N )
(二)Θ(F (n ))的增长相同的顺序为F (N )的所有功能设置
(三)Ω(F (N ))是所有功能的设置相同或较小的增长为F 的顺序(N )
(四)以上都不是正确的
4,多少比较会受到蛮力字符串匹配算法的搜索模式=“00... ...0(M - 1个)”,在文本=“00... 0
(N 个)"?()
(一)(1纳米)米(B )1纳米(三)(NM )M (四)纳米
5,关于归并排序和快速排序的以下断言哪个是假?()
(一)在最好的情况下,合并排序的时间效率是Ω(nlogn )
(二)快速排序在最坏情况下的时间效率是O (nlogn )
(三)合并排序在最坏情况下的时间效率是Ω(nlogn )
(四)在平均情况下的快速排序的时间效率是Θ(nlogn )
6,下列哪项是堆?()
7,以下问题不能使用广度优先搜索算法解决?()
(一)找到两个给定一个图的顶点之间的数量最少的边的路径
(b )检查图acyclicity
(c )寻找一个无向图的关节点
(d )检查图的连通
8,下面的算法属于可变大小减少技术(?)
(一)二进制搜索(二)插值搜索
(三)顺序搜索(d)俄罗斯农民的方法
followting算法计算二项式系数是最有效的呢?(9)
(a)适用于动态规划算法
(b)申请递归的fomula
C组(n,K)= C(N- 1,K- 1)+(N - 1,K)N> K>0
C组(n,0)= C(N,N)= 0
(三)利用公式C(N,K)= N!/ K!(N- K)!
(d)使用公式C(N,K)= N(N - 1)... ...(N - K +1)/ K!
10,下列哪项是真的吗?()
(一)如果e是一个连接加权图的最低weighe边缘,必须至少有一个最小生成树的图的树边之间。
(二)如果连接的加权图的边权重是不是所有不同,图中必须有一个以上的最小生成树。
(C)如果e是一个连接加权图的最低weighe边缘,它必须成为每个树图的最小生成树的边缘。
(四)以上都不是正确的。
二,填空题
(1)给定一个recourrence T(N)+ N ^ 2=9T(n / 3的),T(1)= 3,增长recourrence is_______的解决方案roder。
(使用的渐近符号⊙)
(2)一个djacency基质and__________are两个数据结构来存储或代表图。
(3)大街的矩阵乘法算法is__________乘法。
(4)有三个减少和征服技术的变化;减少一个常数,_____
可变大小的减少。
(5)以下的有向图is___________ lopological秩序。
(6)N =47的约瑟夫问题的解决方案是J(N)=____________.
(7)有三种不同类型的变换而治之的技术:___________, Represention变化和减少问题。
(8)申请荷马的规则来评价多项式P(X)=3X^4- X^ 32X^ 2 x在一个特定的X5的乘法总数is____________。
0 0 1 0
0 0 0 1
(9)鉴于以下的邻接矩阵定义有向图0 1 0 0
0 0 0 0
它的传递闭包是___________。
(10)贪婪的做法表明,贪婪选择的每一步,构建一个解决方案通过一个步骤的顺序,必须作出的选择feasiable,局部最优和__________。
3。
对于下列每个问题,给出一个简短和准确的答案,在答题簿上。
(1)确定以下排序算法是稳定的算法,哪些不是稳定的算法:选择排序,合并排序,冒泡排序,插入排序和快速排序,并解释为什么。
(2)总体规划确定的非递归算法的效率分析。
(3)四种类型描述分类DFS(深度优先搜索)算法的有向图,如何检查的有向图的acyclicity 的边缘。
4.For每个下面的问题,回答一个合适的答案的答题簿上。
(1)假设x是一个正整数,n是2的乘方,使用蛮力方法,divede和征服,技术,减少由一个技术,并减少一半技术,分别计算X^ N确定每种技术和指出该技术是最有效的乘法。
(2)动态规划方法解决0-1 knaspsack问题。
背包问题的实例如下表。
你需要:(1)推导的递推公式V [I,J];(2)填写的V[,],并计算出最佳的解决方案项目设置表(假设的V[I,J]。
最佳的解决方案,以一个0-1背包问题,即适合capactity J.背包的第i个项目的最有价值的一个子集的值的实例的值)
Itme weight value
1 2 $24
2 1 $20
3 3 $50 容量W=5
4 2 $30
(3)解决高斯消元以下的系统。
X1+2 X23 X3=9
2X1+ X2 + X3= 4
X1 - X2-3 × 3=6
(4)申请Dijkstn的算法来计算一个给定的源顶点α的单源最短路径,并找到下面的图的所有其他顶点的最短路径
(5)给定一个数组T[0,N - 1]已按升序排序的有n个不同的整数,如果存在一个索引我我(0≤≤N - 1),这样,T [我] =我,请设计一个高效的算法找到索引和分析你的算法的时间效率。