4.考虑对n个数进行排序,以下最坏时间复杂度低于O(n)的排序方法是()。A.插入排序B.冒泡排序C.归并排序D.快速排序答案:C归并排序最环时间复杂度均为nlogn,插入排序和冒泡排序等简单排序方法的最坏时间复2
杂度都是O(n),而快速排序在最坏情况下则会退化为冒泡排序。5.假设在基数排序过程中,受宁宙射线的影响,某项数据异变为一个完全不同的值。请问排序算法结束后,可能出现的最坏情况是()。A.移除受影响的数据后,最终序列是有序序列B.移除受影响的数据后,最终序列是前后两个有序的子序列C.移除受影响的数据后,最终序列是一个有序的子序列和·个基本无序的子序列D.移除受影响的数据后,最终序列基本无序【答案】A【解析】基数排序是按桶排序思想,某一个值的改变,不会造成其他数据排序失败,排除这个数据,其余数据仍是有序序列6.计算机系统用小端(LittleEndian)和大端(BigEndian)来描述多字节数据的存储地址顺序模式,其中小端表示将低位字节数据存储在低地址的模式、大端表示将高位字节数据存储在低地址的模式。在小端模式的系统和大端模式的系统分别编译和运行以下C++代码段表示的程序,将分别输出什么结果?()unsignedx=0xDEADBEEF;unsignedchar*p=(unsignedchar*)&x;printf(\"%X\",*p);A.EF、EFB.EF、DEC.DE、EFD.DE、DE【答案】B低位是最低位的的EF,高位的就是最高位的DE7.一个深度为5(根结点深度为1)的,按前序遍历的顺序给结点从1开始编号,则第100号结点的父结点是第()号。A.95B.96C.97D.98【答案】C前序遍历的顺序是先根,再左子树,最后右子树。完全3叉树的第1层节点数1,第2层3,第3层9,第4层27,第5层81,深度为5的完全3叉数节点总数为121个。根节点是1号结点,深度为1。根结点的第一个儿子是2号结点,并且2号结点为根的子树一定是一棵深度为4的满三叉树,因此有1+3+9+27=40个结点,所以根结点的第二个儿子是42号,根结点的三号儿子是82号。同理,可以得到82号的第一个儿子是83号,并且以83号为根的子树有1+3+9=13个结点,因此82号的第二个儿子是96号,96号的第一个儿子是97号,而97号有三个儿子分别是98号、99号和100号。8.强连通图的性质不包括():A.每个顶点的度数至少为1C.任意两个顶点之间都有路径相连B.任意两个顶点之间都有边相连D.每个顶点至少都连有一条边【答案】B强连通图,任意两顶点都有路径可达即可,并不需要一定有边相连9.每个顶点度数均为2的无向图称为“2正规图”。由编号为从1到n的顶点构成的所有2正规图,其中包含欧拉回路的不同2正规图的数量为()。A.n!B.(n-1)!C.n!/2D.(n-1)!/2【答案】D正规图理解为一个圆环排列,将某一个顶点固定进行排列则为An的全排列为(n-1)!,那么欧拉回路顺时针与逆时针需要除以2去重,因此为(n-1)!/210.共有8人选修了程序设计课程,期末大作业要求由2人组成的团队完成。假设不区分每个团队内2人的角色和作用,请问共有多少种可能的组队方案()。A.28B.32C.56D.642【答案】A8=8*7/2=2811.小明希望选到形如“省A·WDDD”的车牌号。车牌号在“.”之前的内容固定不变;后面的5位号码中,前2位必须是大写英文字母,后3位必须是阿拉伯数字(里代表A至Z,DD表示0至9,两个#和三个DD之间可能相同也可能不同)。请问总共有多少个可供选择的车牌号()。A.20280B.52000C.676000D.1757600【答案】C大写字母26个,数字10个,26*26*10*10*10=67600012.给定地址区间为0~9的哈希表,哈希函数为h(x)=x%10,采用线性探查的冲突解决策略(对于出现冲突情况,会往后探查第一个空的地址存储;若地址9冲突了则从地址0重新开始探查)。哈希表初始为空表,依次存储(71,23,73,99,44,79,89)后,请问89存储在哈希表哪个地址中。A.9B.0C.1D.2【答案】D存储情况见下表地址值
079171289323473544
678
999
13.对于给定的n,分析以下代码段对应的时间复杂度,其中最为准确的时间复杂度为()。inti,j,k=0;for(i=0;i 5.usingnamespacestd;6. 7.intf(conststring&s,conststring&t)8.{9.intn=s.length(),m=t.length();10. 11.vector 13.inti,j;14. 15.for(j=0;j 27.intmain()28.{29.stringa,b;30.cin>>a>>b;31.cout< 3.usingnamespacestd;4. 5.constintMAXN=105;6. 7.intn,m,k,val[MAXN];8.inttemp[MAXN],cnt[MAXN];9. 10.voidinit()11.{12.cin>>n>>k;13.for(inti=0;i 24.voidsolve()25.{26.intbase=1;27.for(inti=0;i 4.usingnamespacestd;5. 6.constintMAXL=1000;7. 8.intn,k,ans[MAXL];9. 10.intmain(void)11.{12.cin>>n>>k;13.if(!n)cout<<0< 4.intsolve(int*al,int*a2,intn,intk){5.intleft1=0,rightl=n-1;6.intleft2=0,right2=n-1;7.while(left1<=right1&&left2<=right2){8.intml=(leftl+rightl)>>1;9.intm2=(left2+right2)>>1;10.intcnt=①;11.if(②){12.if(cnt 5.intf[N][N];6.intans;7.inta,b,c;8.intinit;9. 10.intdfs(intx,inty){11.if(f[x][y]!=init)12.returnf[x][y];13.if(x==c||y==c)14.returnf[x][y]=0;15.f[x][y]=init-1;16.f[x][y]=min(f[x][y],dfs(a,y)+1);17.f[x][y]=min(r[x][y],dfs(x,b)+1);18.f[x][y]=min(f[x][y],dfs(0,y)+1);19.f[x][y]=min(f[x][y],dfs(x,0)+1);20.intt=min(a-x,y);21.f[x][y]=min(f[x][y],①);22.t=min(x,b-y);23.f[x][y]=min(f[x][y],②);24.returnf[x][y];25.}26. 27.voidgo(intx,inty){28.if(③)29.return;30.if(f[x][y]==dfs(a,y)+1){31.cout<<\"FILL(1)\"< 序号12345678序号161718192021 答案BADCABCB答案√ × 序号9101112131415 答案DACDBBB 序号222324252627 答案X × √DAB √DDC 序号282930313233序号3940414243答案√X√ABB答案ACAAC序号3435363738答案CBCCA 因篇幅问题不能全部显示,请点此查看更多更全内容