正确答案: D
分析算法的效率以求改进
题目:算法分析最重要的目的是
解析:算法分析是指对一个算法需要多少计算时间和存储空间做定量的分析 。在计算机科学中,算法要用计算机算法语言描述,算法代表用计算机解一类问题的精确、有效的方法。算法+数据结构=程序,求解一个给定的可计算或可解的问题,不同的人可以编写出不同的程序来解决同一个问题,这里存在两个问题:一是与计算方法密切相关的算法问题;二是程序设计的技术问题。而算法和程序之间又存在密切的关系。分析算法可以预测这一算法适合在什么样的环境中有效地运行,对解决同一问题的不同算法的有效性做出比较,更重要的是,分析算法可以找出算法的优点和不足,使优点得到保持,对不足进行改进,以获得效率更高的算法。
查看原题 点击获取本科目所有试题
举一反三的答案和解析:
[单选题]______是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理后再沿输出通路变换成外部形式离开软件结构。
变换流
[单选题]是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。
模板
解析:解析: 此题考查的是模板的特点。模板是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。
[单选题]以下程序输出正确的是______。 amovep(int *p,int(*a)[3],int n) {int i,j; for(i=0;in;i++) for(j=0;jn;j++){ *p=a[i][j];p++;} } main() {int *p,a[3][3]={{1,3,5},{2,4,6}}; p=(int*)malloc(100); arnovep(p,a,3); printf("%d%d\n",p[2],p[5];free(p); }
56
解析:解析:本题main函数中定义了指针p和二维数组a,通过函数amovep将数组的值存入指针p所指向的存储单元中,a的各元素分别为:a[0][0]=1,a[0][1]=3,a[0][2]=5,a[1][0]=2,a[1][1]=4,a[1][2]=6,a[2][0]=0,a[2][1]=0,a[2][2]=0。通过mailoc()函数给指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过amovep(p,a,3)调用函数amovep,使得实参p与形参p,实参数组a与形参中指向数组的指针变量共用同一存储空间。最后输出p[2],p[5]为56。
[单选题]某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在 第1层)
7
解析:解析:根据二叉树的性质:在任意一棵二叉树中,度为O的结点(即叶子结点)总是比度为2的结点多一个。所以n20,由n=n0+n1+n2可得n1=6,即该二叉树有6个度为1的结点.可推出该二叉树的深度为7。
[单选题]请选出正确的程序段
int *s, k; char *p, c; s=&k; p=&c; *p=′a′; …
解析:解析:本题的选项A)和B)犯了同样的错误,即指针变量在定义后并没有指向具体的变量。也就是说,指针变量中没有确定的地址值,它的值是不可预见的,所指的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)中,s是int型指针变量,p是char型指针变量,所指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。
[单选题]对于长摩为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是______。
快速排序为n2
解析:解析:快速排序的最坏情况是对于排好序的线性表进行快速排序,由于不能通过交换减少逆序,所以要进行的比较次数是线性表元素的个数。
[单选题]下列4个表达式中,运算结果为数值的是______。
LEN(SPACE(3))-1
[单选题]对于下列语句,正确的判断是 for(x=0,y=O;(y! =123)&&(x4);x++);
最多执行4次
解析:解析:本题考查for循环条件中三个表达式的执行顺序。首先执行表达式一,然后执行表达式二,如果表达式二为真,则循环体执行,然后执行表达式三,接着继续执行表达式二,如此循环。考生要注意的是,本题中表达式三中包含了变量x的增量操作,因此可以由表达式二和三一起控制循环体的执行次数。本题正确答案为C。