1、 A诺贝尔物理学奖 B约翰冯诺依曼奖 C图灵奖 D高德纳奖 (Donald E. Knuth Prize)二、不定项选择题 (共10题,每题1.5分,共计15分。每题正确答案的个数不少于1。多选或少选均不得分)。1如果根结点的深度记为1,则一棵恰有2011个叶子结点的二叉树的深度可能是( )。 A10 B11 C12 D20112在布尔逻辑中,逻辑“或”的性质有( )。 A交换律:PVQ = QVP B结合律:PV(QVR)=(PVQ)VR C幂等律:PVP = P D有界律:PV1 = 1(1表示逻辑真)3一个正整数在十六进制下有100位,则它在二进制下可能有( )位。 A399 B400
2、C401 D4044汇编语言( )。 A是一种与具体硬件无关的程序设计语言 B在编写复杂程序时,相对于高级语言而言代码量大,且不易调试 C可以直接访问寄存器、内存单元、I/O端口 D随着高级语言的诞生,如今已被完全淘汰,不再使用5现有一段文言文,要通过二进制哈夫曼编码进行压缩。简单起见,假设这段文言文只由4个汉字“之”、“乎”、“者”、“也”组成,它们出现的次数分别为700、600、300、400。那么,“也”字的编码长度可能是( )。A1 B2 C3 D4 6生物特征识别,是利用人体本身的生物特征进行身份认证的一种技术。目前,指纹识别、虹膜识别、人脸识别等技术已广泛应用于政府、银行、安全防卫
3、等领域。以下属于生物特征识别技术及其应用的是( )。 A指静脉验证 B步态验证 CATM机密码验证 D声音验证 7对于序列“7、5、1、9、3、6、8、4”,在不改变顺序的情况下,去掉( )会使逆序对的个数减少3。 A7 B5 C3 D68计算机中的数值信息分为整数和实数(浮点数)。实数之所以能够表示很大或者很小的数,是由于使用了( )。A阶码 B补码 C反码 D较长的尾数9对右图使用Dijkstra算法计算S点到其余各点的最短路径长度时,到B点的距离dB初始时赋为8,在算法的执行过程中还会出现的值有( )。A3 B 7 C6 D510为计算机网络中进行数据交换而建立的规则、标准或约定的集合称
4、为网络协议。下列英文缩写中,( )是网络协议 AHTTP BTCP/IP CFTP DWWW三问题求解(共2题,每空5分,共计10分)1平面图可以在画在平面上,且它的边仅在顶点上才能相交的简单无向图。4个顶点的平面图至少有6条边,如右图所示。那么,5个顶点的平面图至少有 条边。2定义一种字符串操作,一次可以将其中一个元素移到任意位置。举例说明,对于字符串“BCA”可以将A移到B之前,变字符串“ABC”。如果要将字符串“DACHEBGIF”变成“ABCDEFGHI”最少需要_次操作。四阅读程序写结果(共4题,每题8分,共计32分)1#includecstringusing namespace s
5、td;const int SIZE = 100;int main() int n,i,sum,x,aSIZE; cinn; memset(a,0,sizeof(a); for(i=1;i=n;i+)x; ax+; i=0; sum=0; while(sum(n/2+1) i+; sum+=ai; coutendl; return 0;输入:114 5 6 6 4 3 3 2 3 2 1输出:2int n;void f2(int x,int y);void f1(int x,int y) if(xn) f2(y,x+y);void f2(int x,int y)xans) ans=len;i+)
6、 if( (!visitedi) & (exi!=-1) ) dfs(i,len+exi); visitedx=false; int i,j,a,b,c;nm; for(j=1;jbc; eab=c; eba=c; visitedi=false; ans=0; dfs(i,0);ansconst int SIZE=10000;const int LENGTH=10;int n,m,aSIZELENGTH;int h(int u,int v) int ans,i; if( aui!=avi) ans+; return ans; int sum,i,j; m=1; while(1) i=1; wh
7、ile( (i break; m+; ami=1; for(j=i+1; amj=am-1j; sum+=h(i,j);sum0) ans.len=a.len+b.len; else ans.len=a.len+b.len-1;hugeint add(hugeint a,hugeint b)/计算大整数a和b 的和 if(a.lenb.len) ans.len=a.len; ans.len=b.len;=ans.len; ans.numi+= ; ans.numi+1+= ans.numi/10; ans.numi%=10; if(ans.numans.len+1 ans.len+;hugei
8、nt average(hugeint a,hugeint b)/计算大整数a和b的平均数的整数部分 ans=add(a,b); for(i=ans.len;i=2;i-) ans.numi-1+=( )*10; ans.numi/=2; ans.num1/=2; if(ans.numans.len=0) ans.len-;hugeint plustwo(hugeint a)/ 计算大整数a加2之后的结果 ans=a; ans.num1+=2;=ans.len)&(ans.numi=10) ) ;bool over(hugeint a,hugeint b)/ 若大整数ab则返回true,否则返回
9、false if( ) return false; if( a.lenb.len ) return true; for(i=a.len;=1; if(a.numi string s; hugeint target,left,middle,right;s; memset(target.num,0,sizeof(target.num); target.len=s.length();=target.len; target.numi=starget.len-i- ; memset(left.num,0,sizeof(left.num); left.len=1; left.num1=1; right=t
10、arget; do middle=average(left,right); if(over( ) right=middle; left=middle; while(!over(plustwo(left),right) ); for(i=left.len;i-)left.numi;2. (笛卡尔树)对于一个给定的两两不等的正整数序列,笛卡尔树是这样的一棵二叉树:首先,它是一个最小堆,即除了根结点,每个节点的权值都大雨父节点的权值;其次,它的中序遍历恰好就是给定的序列。例如,对于序列7、2、12、1、10、5、15、3,下图就是一棵对应的笛卡尔树。现输入序列的规模n(1nmaxDeep) maxDeep=deep; num=1; else if(deep=maxDeep) ; min= INFINITY; for(i=left;=right; if(minai) min=ai; if(leftj) ; if(jright) ;ai; maxDeep=0; solve(1,n,1);maxDeepnum
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1