一、http://www.programgo.com/article/642667450/
这是2014阿里研发笔试题
怎么解?
步骤:
【1】2^31-3这个表达式看成2的31平方减3就错了。实质^是异或 ,—比^优先级高,所以2^(31-3)=2^28=30
【2】foo(30):
return 30 & -30;
30:0001 1110
-30补码表示:1110 0010(取反+1)
0001 1110
& 1110 0010
0000 0010 (2)
注: 32bit ,4个字节表示,前三个字节我省略没写出。因为取反+&运算以后为0。
所以选C 2
补充:如果我写的有bug,欢迎大家指正。
二、http://www.4gosc.com/article/c/3Sf4A5xKdo.html
校园招聘阿里巴巴软件研发算法百度
1. 单选题
1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数
A: h(K)=K/N;
B: h(K)=1;
C: h(K)=K mod N;
D: h(K)=(K+rand(N)) mod N, rand(N)返回0到N-1的整数
答案:D
2. 下面排序算法中,初始数据集的排列顺序对算法的性能无影响的是:
A: 堆排序 B:插入排序
C: 冒泡排序 D:快速排序
答案:A(插入排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O(n^2)
冒泡排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O(n^2)
快速排序:最优时间复杂度O(nlogn)最差时间复杂度O(n^2)平均时间复杂度O(nlogn)
堆排序:最优时间复杂度O(nlogn)最差时间复杂度O(nlogn)平均时间复杂度O(nlogn))
3. 下面说法错误的是:
A: CISC计算机比RISC计算机指令多
B: 在指令格式中,采用扩展操作码设计方案的目的是为了保持指令字长不变而增加寻址空间
C:增加流水线段数理论上可以提高CPU频率
D:冯诺依曼体系结构的主要特征是存储程序的工作方式
答案:B
4. 不属于冯诺依曼体系结构必要组成部分是:
A:CPU B: Cache C:RAM D:ROM
答案:B
5. 一个栈的入栈序列式ABCDE则不可能的出栈序列是:
A:DECBA B:DCEBA C:ECDBA D:ABCDE
答案:C
6.你认为可以完成编写一个C语言编译器的语言是:
A:汇编 B:C语言 C:VB D:以上全可以
答案:D
7. 关于C++/JAVA类中的static成员和对象成员的说法正确的是:
A:static成员变量在对象构造时候生成
B: static成员函数在对象成员函数中无法调用
C: 虚成员函数不可能是static成员函数
D: static成员函数不能访问static成员变量
答案:A
8:
答案:C
9:某进程在运行过程中需要等待从磁盘上读入数据,此时进程的状态将:
A: 从就绪变为运行 B:从运行变为就绪
C: 从运行变为阻塞 D:从阻塞变为就绪
答案:C
10:下面算法的时间复杂度为:
Int f(unsigned int n)
{
If(n==0||n==1)
Return 1;
Else
Return n*f(n-1);
}
A: O(1) B:O(n) C:O(N*N) D:O(n!)
答案:B
11: n从1开始,每个操作可以选择对n加1或者对n加倍。若想获得整数2013,最少需要多少个操作。
A:18 B:24 C:21 D;不可能
答案:A, 对2013用除法,显示2013->2012->1006->503->502->251->250->125->124->62->31->30->15->14->7->6->3->2->1
正向只能是+1和×2,所以逆向只能-1和/2,由上过程可得18次
12:对于一个具有n个顶点的无向图,若采用邻接表数据结构表示,则存放表头节点的数组大小为:
A: n B: n+1 C: n-1 D:n+边数
答案:A
13:
答案:A.对于几何中的每个字符串取hash可以看作是同分布的独立重复事件,所以每一个事件出现10的概率都是p=1/1024,那么当出现的时候,期望的次数就是1/p,1024.
14:如下函数,在32bit系统foo(2^31-3)的值是:
Int foo(int x)
{
Return x&-x;
}
A: 0 B: 1 C:2 D:4
答案:B
15:对于顺序存储的线性数组,访问节点和增加节点删除节点的时间复杂度为:
A: O(n),O(n)B:O(n),O(1) C:O(1),O(n) D:O(n),O(n)
答案:C
16:在32为系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是:
Struct A
{
Int a;
short b;
int c;
char d;
};
Struct B
{
int a;
short b;
char c;
int c;
};
A: 16,16 B:13,12 C:16,12D:11,16
答案:C
17:袋中有红球,黄球,白球各一个,每次任意取一个放回,如此连续3次,则下列事件中概率是8/9的是:
A: 颜色不全相同 B:颜色全不相同C:颜色全相同D:颜色无红色
答案:A
18:一个洗牌程序的功能是将n张牌的顺序打乱,以下关于洗牌程序的功能定义说法最恰当的是:
A: 每张牌出现在n个位置上的概率相等
B: 每张牌出现在n个位置上的概率独立
C: 任何连续位置上的两张牌的内容独立
D: n张牌的任何两个不同排列出现的概率相等
答案:A
19:用两种颜色去染排成一个圈的6个棋子,如果通过旋转得到则只算一种,一共有多少种染色:
A: 10 B:11 C:14: D:15
答案:C
解释:应该有14种方案,设只有黑白两色,默认白色,那么,用p(n)表示有n个黑棋的种类
p(0)=p(6)=1
p(1)=p(5)=1
p(2)=p(4)=3 //相邻的一种,隔一个的一种,两个的一种
p(3)=4 //都相邻的一种,BB0B的一种,BB00B的一种,B0B0B的一种,一共4种
综上是14种
20:递归式的先序遍历一个n节点,深度为d的二叉树,则需要栈空间的大小为:
A: O(n) B:O(d) C:O(logn) D:(nlogn)
答案:B
第二部分:多选
21:两个线程运行在双核机器上,每个线程主线程如下,线程1:x=1;r1=y;线程2:y=1;r2=x;
X和y是全局变量,初始为0。以下哪一个是r1和r2的可能值:
A: r1=1,r2=1
B: r1=1,r2=0
C:r1=0,r2=0
D:r1=0,r2=1
答案:ABD
22.关于Linux系统的负载,以下表述正确的是:
A: 通过就绪和运行的进程数来反映
B: 通过TOP命令查看
C: 通过uptime查看
D: Load:2.5,1.3,1.1表示系统的负载压力在逐渐变小
答案:BC(对于A不确定)
23:关于排序算法的以下说法,错误的是:
A: 快速排序的平均时间复杂度O(nlogn),最坏O(N^2)
B:堆排序平均时间复杂度O(nlogn),最坏O(nlogn)
C:冒泡排序平均时间复杂度O(n^2),最坏O(n^2)
D:归并排序的平均时间复杂度O(nlogn),最坏O(n^2)
答案:D
解释:归并排序的平均时间复杂度O(nlogn),最坏O(nlogn)
24:假设函数rand_k会随机返回一个【1,k】之间的随机数(k>=2),并且每个证书出现的概率相等。目前有rand_7,通过调用rand_7()和四则运算符,并适当增加逻辑判断和循环控制逻辑,下列函数可以实现的有:
A:rand_3 B:rand_21 C:rand_23 D:rand_49
答案:ABCD
解释:对于rand_x(x<7)的直接截断,只要rand数大于x直接忽略,保证rand_x能够做到概率相等。而对于其他的则采用7×rand_7+rand_7,可以-7得到rand_49,然后截断成rand_42,统一除以2,则是rand_21,其他类似。
阿里巴巴2014秋季校园招聘-软件研发工程师笔试题 续
2013-09-21 23:32368人阅读评论(0)收藏举报
校园招聘百度阿里巴巴软件研发算法
第三部分
25、某二叉树的前序遍历序列为-+a*b-cd/ef,后序遍历序列为abcd-*+ef/-,问其中序遍历序列是——。
答案:a+b*c-d-e/f
26、某缓存系统采用LRU淘汰算法,假定缓存容量为4,并且初始为空,那么在顺序访问以下数据项的时候1,5,1,3,2,4,1,2出现缓存命中的次数是——。最后缓存中即将准备淘汰的数据项是——。
答案:3,3
解释:(LRU是Least Recently Used 近期最少使用算法。)1-》1,5-》5,1-》5,1,3-》5,1,3,2-》1,3,2,4-》3,2,4,1-》3,4,1,2-》
首先1调入内存,然后5调入内存,然后1调入内存(命中缓存),然后3调入内存,然后2调入内存,然后4调入内存(将最少使用的5置换出内存),然后1调入内存(命中缓存),然后2调入内存(命中缓存)。最后,最少使用的3将面临被置换出的危险。
27、两个较长的单向链表a和b,为了找出及诶单noed满足node in a并且node in b。请设计空间使用尽量小的算法(用c/c++,java 或者伪代码)
[html]view plaincopyprint?
1 struct node
2 {
3 int v;
4 node *next;
5 };
6 /*
7 返回链表的长度
8 链表为空 返回0
9 */
10 size_t listLen(node * p)
11 {
12 size_t num = 0;
13 while (p!=NULL)
14 {
15 num++;
16 p = p->next;
17 }
18 return num;
19 }
20 // 如果找到了 则返回指针 指向公共节点
21 // 如果不存在 则返回空指针
22 node * findFirstCommenNode(node * pheada, node * pheadb)
23 {
24 size_t lenA = listLen(pheada);
25 size_t lenB = listLen(pheadb);
26
27 node * plistA = pheada;
28 node * plistB = pheadb;
29 //调整长度
30 //plistA 指向较长的一个
31 if (lenA < lenB)
32 {
33 plistB = pheada;
34 plistA = pheadb;
35 size_t t = lenA;
36 lenA = lenB;
37 lenB = t;
38 }
39 while(lenA > lenB)
40 {
41 plistA = plistA->next;
42 –lenA;
43 }
44 //一样长了
45 //寻找公共节点
46 while (plistA!=NULL && plistA != plistB)
47 {
48 plistA = plistA->next;
49 plistB = plistB->next;
50 }
51 return plistA;
52 }
算法的空间复杂度O(1),时间复杂度O(m+n)。
28、当存储数据量超出单节点数据管理能力的时候,可以采用的办法有数据库sharding的解决方案,也就是按照一定的规律把数据分散存储在多个数据管理节点N中(节点编号为0,1,2,,,,N-1)。假设存储的数据时a 请完成为数据a计算存储节点的程序。
[html]view plaincopyprint?
53 #define N 5
54 int hash(int element){
55 return element*2654435761;
56 }
57 int shardingIndex(int a){
58 int p = hash(a);
59 _______________; //这里是空格
60 return p;
61 }
答案:p%=N
29、宿舍内5个同学一起玩对战游戏。每场比赛有一些人作为红方,另一些人作为蓝方。请问至少需要多少场比赛,才能使任意两个人之间有一场红方对蓝方和蓝方对红方的比赛?
答案:4场,分别是AB-CDE、ACD-BE、BCE-AD、DE-ABC
三、http://www.cplusplus.me/1655.html
华为笔试题一(C语言)
2014年07月13日 面试 暂无评论 阅读 19 次
判断题(对的写T,错的写F并说明原因,每小题4分,共20分)
1、有数组定义int a[2][2]={,{2,3}};则a[0][1]的值为0。()
答案:T、如果写法正确的话,应该是0,0,2,3。
2、int (*ptr) (),则ptr是一维数组的名字。()
答案: F、函数指针,指向函数的指针,是一个指针。查看函数指针和指针函数区别
3、指针在任何情况下都可进行>,<,>=,<=,==运算。()
答案: T、指针,实际是地址0x3423..,可以进行运算。
4、switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。()
答案:F,字符型,或者整形,float在计算机中本来就不确定,比如1>0.9999?
5、#define print(x) printf("the no, "#x",is ")
答案:T,解释如下:在#define中,标准只定义了#和##两种操作。#用来把参数转换成字符串,##则用来连接两个前后两个参数,把它们变成一个字符串。
[cpp]#include
define paster( n ) printf( “token ” #n” = %d\n “, token##n )
int main()
{
int token9=10;
paster(9);
return 0;
}[/cpp]
运行结果:token 9 = 10
填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。
char str[ ]= "Hello";
char *p=str;
int n=10;
sizeof(str)=( )
sizeof(p)=( )
sizeof(n)=( )
void func(char str[100])
{ }
sizeof(str)=( )
答案:6、4、4、4(数组做参数退化成指针,点我查看)
2、void setmemory(char **p, int num) 10分
{ p=(char ) malloc(num);}
void test(void)
{ char *str=NULL;
setmemory(&str,100);
strcpy(str,"hello");
printf(str);
}
运行test函数有什么结果?()
答案:hello
3、设int arr[]={6,7,8,9,10}; 10分
int *ptr=arr;
*(ptr++)+=123;
printf("%d,%d",ptr,(++ptr));
答案:8,8. 在vc6.0下是从有到左,这里先*(++ptr) 后*pt,于是结果为8,8。
问答题(每题5分,共30分)
1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)
答案: #define SECONDS (60*60*24*365)L //无分号、长整型
2 . 写一个”标准”宏MIN ,这个宏输入两个参数并返回较小的一个。
答案:#defined MIN(a,b) ((a < b) ? (a) : (b))
3. 预处理器标识#error的目的是什么?
答案:停止编译,提示错误
4. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?
答案:for(;;)、while(1)、LOOP: goto LOOP;
5.关键字const有什么含意?
答案:常量,该数值不可改变。并可做修饰,比如常量指针 int const *p;
编程题(每题10分,共20分)
1、不使用库函数,编写函数int strcmp(char *source, char *dest)
相等返回0,不等返回-1;
答案:字符串比较函数,可以用for循环,判断*source == *dest
2、写一函数int fun(char *p)判断一字符串是否为回文,是返回1,不是返回0,出错返回-1
答案:判断是否相同,条件i小于j; for前for后或者while(i小于j),相等继续,不等return。。。
四、http://cv.qiaobutang.com/post/55b6ff400cf220407d66d332
2015校招网易C/C++工程师笔试题(附答案)
1. #include < filename.h >和#i nclude “filename.h” 有什么区别?
答:对于#i nclude < filename.h >,编译器从标准库路径开始搜索filename.h
对于#i nclude “filename.h”,编译器从用户的工作路径开始搜索filename.h
在C++ 程序中调用被C 编译器编译后的函数,为什么要加extern “C”?
答:C++语言支持函数重载,C 语言不支持函数重载。函数被C++编译后在库中的名字与C 语言的不同。假设某个函数的原型为:
void foo(int x, int y);
该函数被C 编译器编译后在库中的名字为_foo , 而C++ 编译器则会产生像_foo_int_int 之类的名字。
C++提供了C 连接交换指定符号extern“C”来解决名字匹配问题。一个类有基类、内部有一个其他类的成员对象,构造函数的执行顺序是怎样的?
答:先执行基类的(如果基类当中有虚基类,要先执行虚基类的,其他基类则按照声明派生类时的顺序依次执行),再执行成员对象的,最后执行自己的。New delete 与malloc free 的区别
答:用malloc 函数不能初始化对象,new 会调用对象的构造函数。Delete 会调用对象的destructor,而free 不会调用对象的destructor.Struct 和class 的区别
答:struct 中成员变量和成员函数默认访问权限是public,class 是private
6.请问下面程序有什么错误?
int a[60][250][1000],i,j,k;
for(k=0;k<=1000;k++)
for(j=0;j<250;j++)
for(i=0;i<60;i++)
a[i][j][k]=0;
答:把循环语句内外换一下
- 请写出下列代码的输出内容
2015校招网易C/C++工程师笔试题(附答案) - 写出BOOL,int,float,指针类型的变量a 与零的比较语句。
答: BOOL : if ( !a )
int : if ( a == 0)
float : const EXPRESSION EXP = 0.000001
if ( a < EXP && a >-EXP)
pointer : if ( a != NULL)
9.已知strcpy 函数的原型是:
char *strcpy(char *strDest, const char *strSrc);
其中strDest 是目的字符串,strSrc 是源字符串。不调用C++/C 的字符串库函数,请编写函数 strcpy
答:
2015校招网易C/C++工程师笔试题(附答案)
10.写一个函数找出一个整数数组中,第二大的数。
答:
五、http://www.faceye.net/search/113306.html
什么是 阿里2015校招笔试题 研发工程师
1、C++内存分配中说法错误的是()
A 对于栈来说,生长方向是向上的,也就是向着内存地址增加的方向
B 对于堆 ,大量的new/delete操作会造成内存空间不连续
C 堆容易产生memory leak
D 堆的效率比栈要低很多
E 栈变量引用容易逃逸
F 以上都对
2、全班100个学生,老师让玩如下一个游戏:每个学生在纸上写一个1到100之间的整数(含1和100),不能参考别人写的数字,谁的数字最接近所有数字的3/4,谁就会获得100元。下面的数字中,最糟糕的选择是()
A 1
B 2
C 10
D 20
E 50
F 80
3、下列正则表达式不可以匹配“www.alibaba-inc.com”的是()
A ^\w+.\W+-\w+.\w+$
B [w]{0,3}.[a-z-]*.[a-z]+
C [c-w.]{3,10}[.][c-w.][.][a]
D [w][w][w][alibaba-inc]+[com]+
E ^\w.*com$
F [w]{3}.[a-z-]{11}.[a-z]{3}
4、关于UNIX系统代码段和数据段分开的目的,错误的说法有()
A 可共享正文
B 可共享数据
C 可重入
D 可保护代码为只读
E 方便编程
F 更好支持内存回收策略
5、下列关键字序列为堆的是()
A 100,60,70,50,32,65
B 60,70,65,50,32,100
C 65,100,70,32,50,60
D 70,65,100,32,50,60
E 32,50,100,70,65,60
F 50,100,70,65,60,32
6、用6块1*2的完整瓷砖,铺满2*6的地面,一共有()种不同铺法,不允许将瓷砖划分为小瓷砖。
A 13 B 15 C 22 D 24 E 25 F 26
7、设m和n都是int类型,那么一下for循环语句()
for(m=0,n=-1;n=0;m++,n++)n++;
A 循环体一次也不执行
B 循环体执行一次
C 无限循环
D 有限次循环
E 循环结束判断条件不合法
F 运行出错
8、带头结点的单链表head为空的判断条件是()
A head==NULL
B head->next=NULL
C head->next==head
D head!=NULL
E *head==NULL
F *(head->next)==NULL
9、硬币游戏:连续仍硬币,直到某一人获胜。A获胜条件是先正后反,B获胜条件是出现连续两次反面,问AB游戏时A获胜的概率()
A 1/6 B 1/4 C 1/3 D 1/2 E 2/3 F 3/4
10、一个函数定义的返回值是float,它不能在return语句中返回的值得类型是()
A char B int C float D long E double F 以上都可以
11、在一下操作中,数组比线性表速度更快的是()
A 原地逆序 B 头部插入 C 返回中间节点
D 返回头部节点 E 选择随机节点
12、已知某二叉树前序为(1-2-3-4-5-6-7-8-9),中序为(2-3-1-6-7-8-5-9-4),则它的后续为()
A 3-2-8-7-6-9-5-4-1
B 1-2-6-5-4-3-8-7-9
C 5-4-2-1-3-7-6-9-8
D 2-3-5-4-6-7-9-1-8
E 3-2-1-4-5-9-8-6-7
F 3-2-1-8-7-6-9-5-4
13、某团队有2/5的人会写java程序,有3/4的人会写C++程序,这个团队里同时会写java和C++的最少()人。
A 3 B 4 C 5 D 8 E 15 F 20
14、某团队负责人接到一个紧急项目,他要考虑在代号为ABCDEF这6个团队成员中的部分人员参加项目开发工作。人选必须满足一下各点:
AB两人中至少一个人参加
AD不能都去
AEF三人中要派两人
BC两人都去或都不去
CD两人中有一人参加
若D不参加,E也不参加
那么最后()参加紧急项目开发。
A ECEF B AF C ECF D F E ABCF F ECDEF
15、若干个等待访问的磁盘依次要访问的磁道为19,43,40,4,79,11,76,当前磁头位于40号柱面,若用最短寻道时间优先磁盘调度算法,则访问序列为()
A 19 43 40 4 79 11 76
B 40 43 19 11 4 76 79
C 40 43 76 79 19 11 4
D 40 43 76 79 4 11 19
E 40 43 76 79 11 4 19
F 40 19 11 4 79 76 43
16、把校园同一区域的两张不同比例尺的地图叠放在一起,并且使其中较小尺寸的地图完全在较大尺寸的地图的覆盖下。在每张地图上都有经纬坐标,显然,这两个坐标系并不同。我们把恰好重叠在一起的两个相同的坐标称之为重合点,下面关于重合点的说法正确的是()
A 可能不存在重合点
B 必然有且仅有一个重合点
C 可能有无穷多个重合点
D 重合点构成了一条直线
E 重合点可能在小地图之外
F 重合点是一小片连续的区域
17、若路由器接收的IP报文的目的地址不是路由器的接口IP地址,并且未匹配的路由项,则采取策略是()
A 丢掉该分组 B 将该分组分片 C 转发该分组 D 将分组转发或分片 E 将分组保留存储 F 都有可能
18、计算三个稠密矩阵A、B、C的乘积ABC,假定三个矩阵的尺寸分别为m*n,n*p,p*q,且m<n<p<q
,一下计算顺序效率最高的是()
A (AB)C B A(BC) C (AC)B
D (BC)A E (CA)B F 以上效率相同
19、有字符序列(Q,H,C,Y,P,A,M,S,R,D,F,X),新序列(F,H,C,D,P,A,M,Q,R,S,Y,X)是下列()排序算法一趟扫描结果。
A 二路归并排序 B 快速排序 C 步长为4的希尔排序 D 步长为2的希尔排序 E 冒泡排序 F 堆排序
20、不记得了。
附加题:
1、给定一个query和一个text,均由小写字母组成。要求在text中找出以同样顺序连续出现在query中最长连续字母序列的长度。例如,query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出现在query中的字符序列,因此,返回结果应该为其长度3。请注意程序效率。
2、写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵树中相差最大的两个节点间的差的绝对值。请注意程序效率。
六、http://binwu.net/interview/2015/04/05/ali-interview/
七、http://www.tucaobj.com/note/java/201504041918064862.jhtml
八、http://www.cnblogs.com/lanxuezaipiao/p/4030936.html
九、http://cv.qiaobutang.com/post/55af11520cf25565dc6efde5
【笔试真题】阿里巴巴2015校招—数据研发工程师
07-22 11:43 喜欢苏苏的田田
玫瑰选择题
1. 某团队有2/5的人会写Java程序,有3/4的人会写C++程序,这个团队里同时会写Java和C++的至少有()人
A. 3
B. 4
C. 5
D. 8
E. 15
F. 20
某团队负责人接到一个紧急项目,他要考虑在代号为ABCDEF这6个团队成员中的部分人员参加项目开发工作。人选必须满足一下各点: AB两人中至少一个人参加 AD不能都去 AEF三人中要派两人 BC两人都去或都不去 CD两人中有一人参加 若D不参加,E也不参加 那么最后()参加紧急项目开发。
A. ECEF
B. AF
C. ECF
D. F
E. ABCF
F. ECDEF对立双方争夺一个价值为1的商品, 双方可以采纳的策略可以分为鸽子策略和鹰策略。如果双方都是鸽子策略,那么双方各有1/2的几率获得该物品;如果双方均为鹰策略,那么双方各有1/2的概率取胜,胜方获得价值为1的物品,付出价值为1的代价;如果一个为鸽子策略,一方为鹰策略,那么鹰策略获得价值为1的物品。在争夺结果出来之前,没人知道对方是鸽子策略还是鹰策略。当选择鸽子策略的人的比例是某一个值时,选择鸽子策略和选择鹰策略的预期收益是相同的。那么该值是:
A. 0.2
B. 0.4
C. 0.5
D. 0.7
E. 0.8
F. 以上都不对在小端机器中,如果
union X{
int x;
char y[4];
};
如果:
X a;
a.x=0x11223344;//16进制
则:
A. a.y[0]=11
B. a.y[1]=11
C. a.y[2]=11
D. a.y[3]=11
E. a.y[0]=22
F. a.y[3]=22在以下操作中,数组比线性表速度更快的是()
A. 原地逆序
B. 头部插入
C. 返回中间节点
D. 返回头部节点
E. 选择随机节点Linux系统某个可执行文件属于root并且有setid, 当一个普通用户mike运行这个程序时,产生的进程的有效用户和实际用户分别是()
A. root mike
B. root root
C. mike root
D. mike mike
E. deamon mike
F. mike deamon有4个进程A、B、C、D,设它们依次进入就绪队列,因相差实际很短可视为同时到达。4个进程按轮转法分别运行11,7,2和4个时间单位,设时间片为1。四个进程的平均周转时间为()
A. 15.25
B. 16.25
C. 16.75
D. 17.25
E. 17.75
F. 18.25在一个双向循环链表中,指针p所指向的节点(非尾节点)之后插入指针s所指向的节点,其修改指针的操作是()
A. p->next=s; s->prev=p; p->next->prev=s; s->next=p->next;
B. p->next->prev=s; p->next=s; s->prev=p; s->next=p->next;
C. p->next->prev=s; s->prev=p; p->next=s; s->next=p->next;
D. s->prev=p; s->next=p->next; p->next->prev=s; p->next=s;E. s->next=p->next; s->prev=p; p->next=s; p->next->prev=s;下列选项中,()是一个典型的TCP客户端(主动建立连接,主动关闭连接)
A. SYNC_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT
B. SYNC_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->CLOSE_WAIT
C. SYNC_SENT->SYNC_RCVD->ESTABLISHED->FIN_WAIT1->FIN_WAIT2
D. SYNC_RCVD->ESTABLISHED->CLOSE_WAIT->TIME_WAIT->LAST->ACK
E. SYNC_RCVD->ESTABLISHED->CLOSE_WAIT->TIME_WAIT->FIN_WAIT1
F. SYNC_SEND->ESTABLISHED->FIN_WAIT1->TIME_WAIT->CLOSE_WAIT已知一个二叉树的前序遍历结果是(ACDEFHGB), 中序遍历结果是(DECAHFBG), 请问后序遍历结果是()
A. HGFEDCBA
B. EDCHBGFA
C. BGFHEDCA
D. EDCBGHFA
E. BEGHDFCA
F. BGHFEDCA一个博物馆以每分钟20人的速度进入,平均每人待20分钟,问博物馆至少需要容纳()人
A. 100
B. 200
C. 300
D. 400
E. 500个数为50k的数列,需进行从小到大排序,数列特征基本逆序(多数数字从大到小,个别数字乱序),以下哪种排序算法在事先 不了解数列特征的情况下能大概率最优(不考虑空间限制)()
A. 冒泡排序
B. 改进冒泡排序
C. 选择排序
D. 快速排序
E.堆排序
F.插入排序在动态内存分配(C语言的malloc,C++的new),得到的存储区在内存中的()
A. 静态区
B.堆(heap)
C. 栈(stack)
D. 堆栈
E. 内核内存
F. 不确定“村长”带着4对父子参加“爸爸去哪儿”第三季第二站某村庄的拍摄。村里为了保护小孩不被拐走有个千年的规矩,那就是吃饭的时候小孩左右只能是其他小孩或者自己的父母。那么4对父子在圆桌上共有几种坐法。(旋转一下,每个人面的的方向变更后算是一种新的坐法)()
A. 144
B.240
C.288
D.480
E.576
F.960每台物理计算机可以虚拟出20台虚拟机,假定一台虚拟机发生故障当且仅当它所宿主的物理机发生故障。通过5台物理机虚拟出的100台虚拟机,那么关于这100台虚拟机的故障的说法正确的是()
A. 单台虚拟机的故障率高于单台物理机的故障率
B. 这100台虚拟机发生故障是彼此独立的
C. 这100台虚拟机单位时间内出现故障的个数高于100台物理机单位时间内出现故障的个数
D. 无法判断这100台虚拟机和100台物理机哪个更可靠
E. 如果随机选出5台虚拟机组成集群,那么这个集群的可靠性和5台物理机的可靠性相同
F. 可能有一段时间只有1台虚拟机发生故障下列C代码中,不属于未定义行为的有()
A. int i=0;i=(i++);
B. char *p=”hello”; p[1]=’E’;
C. char *p=”hello”; char ch=*p++;
D. int i=0;printf(“%d %d\n”, i++, i?);
E. 都是未定义行为
F. 都不是未定义行为带头节点的单链表head为空的判断条件是()
A. head==null
B. head->next==null;
C. head->next==head;
D. head!=null;
E. head==null;F. (head->next)==null;甲乙两路发车间隔均为10分钟的公交车发车时刻分钟数个位分别为1和9,那么对于一个随机到达的乘客,ta乘坐甲车的概率为
A. 0.1
B.0.2
C. 0.3
D. 0.4
E. 0.5
F. 0.9
玫瑰玫瑰简答题
1. 给定一个query和一个text,均由小写字母组成。要求在text中找出以同样顺序连续出现在query中最长连续字母序列的长度。例如,query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出现在query中的字符序列,因此,返回结果应该为其长度3。请注意程序效率。
写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵树中相差最大的两个节点间的差的绝对值。请注意程序效率。
Java中wait方法和sleep方法有什么区别。
4.淘宝网(www.taobao.com)与阿里巴巴网([url=http://www.alibaba.com]www.alibaba.com[/url])是阿里巴巴集团下的两个独立网站,假设淘宝网每天的独立访客数在亿以上(以IP计),阿里巴巴网每天的独立访客数在千万以上(以IP计);这两个网站有各自的浏览日志,记录了访客在本网站上的浏览记录,如IP、访问时间、访问页面的URL等(注:一个IP在某天可能访问多个页面);现有这两个网站某天的浏览日志文件各一份,要计算在该天既访问过淘宝网又访问过阿里巴巴网站的独立访客数大约是多少,请给出你能想到的方案(可多个)。