1、静态变量通常存储在进程的哪个区?()
A、栈区
B、全局区
C、堆区
D、代码区
2、已知一棵二叉树,如果中序遍历的节点顺序是:3415726,后序遍历是:3147625,则先序遍历结果为:()
A、3176425
B、4315726
C、5431276
D、5314276
3、()存储管理方式提供二维地址结构。
A、固定分区
B、静态分区
C、可变分区
D、分页
4、进程和程序的本质区别是()。
A、顺序和非顺序执行机器指令
B、动态和静态特征
C、分时使用和独占使用计算机资源
D、存储在内存和外存
5、设G是6个顶点的完全图,则从G中删去()条边可以得到树.
A、10
B、11
C、12
D、8
6、以下排序中,最好情况下比较次数最少的是()。
A、快速排序
B、堆排序
C、冒泡排序
D、归并排序
7、系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,可以使用的设计模式是()。
A、外观
B、装饰
C、单件
D、模板方法
8、设X、Y是两个任意事件,则P(Y-X)=()。
A、P(X)-P(Y)
B、P(X)-P(Y)+P(XY)
C、P(Y)-P(XY)
D、P(X)+P(Y)-P(XY)
9、Linux 系统里,用()命令来查看网卡状态。
A、ping
B、ipconfig
C、winipcfg
D、ifconfig
10、在Linux系统中运行下面程序,最多可产生()个进程?
void main() { fork(); fork(); fork(); fork(); }
A、14
B、15
C、16
D、17
11、输出的结果是()。
main(){ char c[5] = {'a','b','c','d','e'}; char *pp=(char *)&c+2; printf(“%d,%d”,*(c+1),*(pp-1)); }
A、程序报错
B、b,b
C、b,d
D、c,d
12、n阶矩阵A为奇异矩阵的充要条件是()。
A、R(A)<n
B、A的特征值都等于零;
C、|A|≠0
D、A的特征值都不等于零
13、如果下列的公式成立:73*24=14b0。则采用的是()进制表示的。
A、11
B、12
C、14
D、16
14、在如下6*4的矩阵中,请计算从A移动到B一共有( )种走法。要求每次只能向上或向右移动一格,并且不能经过P。
A、32
B、46
C、56
D、64
15、系统有某类资源7个,供4个进程共享,为保证系统安全,应限定每个进程申请的资源数不超过()个。
A、1
B、2
C、3
D、4
16、已知一批产品中90%为合格品,检查时,一个合格品被误认为是次品的概率是0.3,一个次品被误认为合格品的概率为0.02,那么一个产品经检查后被认为是合格品的概率是()
A、0.631
B、0.632
C、0.644
D、0.645
17、以下哪些事件会直接导致linux系统从用户态切换到内核态?()
A、应用程序异常
B、编译程序源码
C、执行系统调用
D、查看系统日志
18、已知一棵二叉树,先序遍历为3124675、后序遍历为2415763.求树的样子有多少种?()
A、2
B、3
C、4
D、5
19、考虑以下二分查找的代码:
include<stdio.h> int bsearch(int array[], int n, int v) { int left, right, middle; left = 0, right = n-1; while(left <= right) { middle = left + (right - left)/2; if (array[middle] > v) right = middle; else if (array[middle] < v) left = middle; else return middle; } return -1; }
对于输入array为:{3, 6, 9, 22, 36, 47, 55, 83, 91, 100},n = 10, v = 56时,运行bsearch函数,while循环调用的次数为()
A、1
B、3
C、5
D、无法退出
20、设关系R(X,Y,Z),其函数依赖集F={X→Y,Y→Z},在关系R至多满足()?
A、BCNF
B、3NF
C、2NF
D、1NF
21、栈和队列的共同特点是()。
A、只允许在端点处插入和删除元素
B、都是先进后出
C、都是先进先出
D、没有共同点
22、一项工程,如果单独工作时,小明花6小时完成,小刚花8小时,小军花12小时,现小明小刚小军,顺序轮流开展工作,每人工作1小时换班,完工时,小刚总共干了多少小时()。
A、4小时
B、2小时40分
C、3小时40
D、3小时48分
23、将2,4,6,8,……,,198,200任意顺序围成一个圈,则相邻数字的差值的求和最多为()?
A、2500
B、5000
C、10000
D、20000
24、1到50的自然是顺序排列,从中任意取出两个数字进行相减,抛去减数和被减数,留下差的绝对值,重复此操作,最终剩下的数字是()。
A、奇数
B、偶数
C、任意奇偶
25、盒子里分别有一叠彩色纸,其中蓝色的纸6张,红色的纸5张,紫色的纸4张,从盒子中任意取4张纸,则每种颜色的纸至少取到一张的概率为()
A、8/91
B、 25/91
C、 48/91
D、 53/91
26、一棵树中,子节点个数为2的点有3个,子节点个数为3的点有2个,则子节点个数为1的个数为()
A、2
B、3
C、4
D、5
27、现有一个有序表,其长度为15,在表内元素等概率的情况下,按二分法查找,则平均查找成功所需比较次数为()
A、45/15
B、47/15
C、49/15
D、53/15
28、用某种排序方法对关键字序列(26,90,23,49,18,28,65,38,21)进行排序,序列的变化情况采样如下:
21,18,23,26,49,28,65,38,90
18,21,23,26,38,28,49,65,90
18,21,23,26,28,38,49,65,90
请问采用的是以下哪种排序算法()
A、选择排序
B、希尔排序
C、归并排序
D、快速排序
29、邻接表存储结构适合存储()
A、有向图
B、无向图
C、稀疏图
D、稠密图
30、银行家算法是一种()算法
A、死锁避免
B、死锁检测
C、死锁预防
D、死锁解除
31、在TCP/IP中,解決计算机到计算机之间通信问题的层次是()
A、网络接口层
B、网际层
C、传输层
D、应用层
32、下面程序的输出结果是?()
#include<iostream.h> void main(){ int n[][2]={20,40,60,80}; int (*p)[2]; p=n; cout<<p[0][0]<<","<<*(p[0]+1)<<endl; }
A、 20,40
B、 60,80
C、20,60
D、40,80
33、对进程和线程的描述,以下哪个是正确的?
A、父进程的所有线程共享相同的地址空间,父进程的所有子进程共享相同的地址空间
B、改变进程里面主线程的状态会影响其他线程的行为,改变父进程的状态不会影响其他子进程
C、多线程会引发死锁,而多进程不会
D、以上都不对
34、选择排队作业中等待时间最长的作业被优先调度,该调度算法是()
A、先来先服务调度算法
B、短作业优先调度算法
C、优先权调度算法
D、高响应比优先调度算法
35、下面算法时间复杂度是()
int foo(int n) { if(n<=1) return 1; return n*foo(n-1); }
A、O(log2n)
B、O(n)
C、O(nlog2n)
D、O(n2)
36、在竞选条件(race condition)下,两个线程执行如下代码段,其中count为共享变量,线程1执行代码段A,线程2执行代码段B,那么变量count的值不可能为()
int count = 20;
代码段A:
Thread_1(){ //do something count++; }
代码段B:
Thread_2(){ //do something count--; }
A、19
B、20
C、21
D、22
37、以下哪项信息是UDP报头中存在的()
A、目的地址
B、窗口大小
C、序列号
D、检验和
38、Internet的核心协议是()
A、X.25
B、TCP/IP
C、ICMP
D、UDP
39、线性表若采用链式存储结构时,要求内存中可用存储单元的地址()。
A、必须是连续的
B、部分地址必须是连续的
C、一定是不连续的
D、连不连续都可以
40、下面关于IP地址与硬件地址的叙述错误的是()。
A、在局域网中,硬件地址又称为物理地址或MAC地址。
B、硬件地址是数据链路层和物理层使用的地址,IP地址是网络层和以上各层使用的。
C、IP地址不能直接用来进行通信,在实际网络的链路上传送数据帧必须使用硬件地址。
D、RARP是解决同一个局域网上的主机或路由器的IP地址到硬件地址的映射问题。
1、实现字符串匹配,且支持正则中的'?'和'*'的逻辑,返回匹配结果
例子如下:
待匹配的字符串:”string”
匹配的字符串: “s*g”
返回值:true
2、你一定玩过消除类的游戏吧,请完成一个消除判断算法,使用已有的字母去插入字母字符串中(注意:使用过的字母不能拿回)。当三个或多个字母连续时,进行消除操作,返回你最少使用的字母数量,若无法完全消除,返回-1.
例子如下:
输入:"CDDBBC", "DB"
返回:-1
其中一种方案如:CDDBBC -> CDD[D]BBC -> CBBC -> CBB[B]C -> CC
输入:"CCDDBBCC", "CDBDC"
返回:2
步骤解释:CCDDBBCC -> CCDD[D]BBCC -> CCBBCC -> CCBB[B]CC -> CCCC -> empty
输入:"D", "ABDD"
返回:2
步骤解释:D -> D[D] ->DD->DD[D]->DDD->empty