阿里巴巴校招笔试月题目

阿里巴巴校招笔试月题目
阿里巴巴校招笔试月题目

1. 现在计算机中整数采用的编码方式:

A. 原码

B. 反码

C. Unicode 码

D. 补码

2. 下面程序的运行结果:

#include

using namespace std;

void test(char c, char *d)

{

++c;

++*d;

cout << c << *d;

}

int main()

{

char a='A', b = 'a';

test(b, &a);

cout << a << b;

return 0;

}

A. ...

B. ...

C. bBBa

D. ...

3. 下面的说法那个正确:

#define NUMA

#define NUMB 1000

int a[NUMA], b[NUMB];

void pa()

{

int i, j;

for(i = 0; i < NUMB; ++i)

for(j = 0; j < NUMA; ++j)

++a[j];

}

void pb()

{

int i, j;

for(i = 0; i < NUMA; ++i)

for(j = 0; j < NUMB; ++j)

++b[j];

}

A. pa 和pb 运行的一样快

B. pa 比pb 快

C. pb 比pa 快

D. 无法判断

4. 10 个小球中只有一个红球,现在有放回地抽取一个小球,问至到第n 次才取到k 个红球(k ≤n) 的概率是多少?

A. B. C. D.

5. 某指令流水线由5 段组成,各段所需要的时间分别是:t、3t、t、2t 和t 。问如果连续执行10 条指令,则吞吐率是多少?

A. t

B. t

C. t

D. t

6. 现有两道四个选项的火星文单选题,你已经至少答对一题了,那么你两题都对的概率是多少?

A. 1/3

B. 1/4

C. 1/7

D. 1/8

7. 以下是一个tree 的遍历算法,queue 是一个FIFO 队列。参考下面的tree ,程序输出结果是神马。

;

while(true){

node = ();

output; 1234567 B. 1245367 C. 1376254 D. 1327654

8. 堆排序的时间复杂度是多少? 堆排序建堆的时间复杂度是多少?

A. O(n2) O(n logn)

B. O(n) O(nlogn)

C. O(nlogn) O(n)

D. O(nlogn) O(nlogn)

9. 字符串"alibaba" 的二进制哈夫曼编码有多少位?

A. 11 C. 13 D. 14

10. 结点按中序遍历为xyz 的二叉树有多少种可能?

A. 1 E. 5

11. 500 张纸牌整齐排成一排,按顺序编号1、2、3、4、...、499、500,第一次拿走所有奇数位置上的纸牌,第二次再拿走剩下纸牌中的所有奇数位置上的纸牌,以此类推操作下去,问最后剩下的纸牌的编号是多少?

A. 128

B. 250

C. 256

D. 500

12. 一直矩阵Ak = (aij)rk ×rk+1,k = 1, 2, 3, 4, 5, 6 ;r1 = 5,r2 = 10,r3 = 3,r4 = 8,r5 = 5,r6 = 20,r7 = 6,问矩阵链乘A1 ×A2 ×A3 ×A4 ×A5 ×A6 的最佳求积次数是多少?

A. 2010

B. 2100

C. 2500

D. 2525

13. 有多少个2012 位的数,这些数的任意两个相邻数位依序构成的两位数均能被17 或23 整除?

A. 3

B. 5.

C. 7

D. 9

14. 关于linux 的进程,下面说法不正确的是:

A. 僵尸进程会被init 进程接管,不会造成资源浪费;

B. 孤儿进程的父进程在它之前退出,会被init 进程接管,不会造成资源浪费;

C. 进程是资源管理的最小单位,而线程是程序执行的最小单位。Linux 下的线程本质上用进程实现;

D. 子进程如果对资源只是进行读操作,那么完全和父进程共享物理地址空间。

15. 一个数据表有10000 个元素,如果仅要求求出其中最大的10 个元素,采用什么算法比较节省时间?

A. 堆排序

B. 希尔排序

C. 快速排序

D. 直接选择排序

16. 一棵二叉树具有8 个度为2 的结点,5 个度为1 的结点,则度为0 的结点个数有多少个?

A. ...

B. 9

C. 11.

D. 不确定

17. 被除数是二进制数110110,除数是二进制数111,则余数是多少?

A. ...

B. 101

C. 110

D. ...

18. 对于下面的问题,不能使用栈stack 来解决的是?

A. 数学表达式转换为后缀形式

B. 实现递归算法

C. 编程语言的递归调用

D. 操作系统分配资源(如CPU)

19. 甲盒中有200 个螺杆,其中有160 个A 型螺杆;乙盒中有240 个螺母,其中有180 个A 型的。现从甲乙两盒中各任取一个,则能配成A 型螺栓的概率为多少?

A. 1/20

B. 15/16

C. 3/5

D. 19/20

20. 有A 和B 两路公交车,平均发车时间间隔为5 分钟和10 分钟。某乘客在站点S 可以任意选择两者之一乘坐,假定A 和B 到达S 的时刻无法确定,那么该乘客的平均等待时间是多少?

A 1 分钟20 秒B. 1 分钟40 秒C. 2 分钟30 秒D. 3 分钟20 秒

21. 下面不是引起进程调度原因的是?

A. 进程执行完毕

B. 进程I/O 请求队列

C. 进程死循环

D. 进程调用阻塞原语进入睡眠状态

22. 用于解决CPU 指令乱序、编译器重排、多CPU 内存同步等带来的问题的机制是?

A. 内存屏障

B. 信号量

C. 自旋锁

D. volatile 关键字

23. 下面使用贪心算法的是:

A. 单元最短路径Dijkstra 算法

B. 最小生成树Prim 算法

C. 最小生成树Kruskal 算法

D. 计算每对顶点最短路径的Floyd-Warshall 算法

E. 字符串匹配中的KMP 算法

24. 关于ACID 说法正确的是:

A. A 可用性。....

B. C 一致性。在食物开始之前和结束后,数据库的约束保持不变。

C. I 隔离性。两个同时运行的事务的执行是互不影响,中间结果不可交叉访问。

D. D 持久性。在事务提交之后,该事务所作的更改持久保存在存储介质之中,不会被回滚。

25. 现有一个循环队列,其队头指针为front,队尾指针为rear,循环队列的总长度为N,问队内有效长度是多少?

26. 一个数组X,其中存有N 个数字。现只允许遍历一遍,1) 有没有可能计算这些数字的方差? 2) 如果可以,请描述方案,如果不可以,说明原因。

27. 不使用临时变量交换int a 和int b 的值;请使用三行代码。

28. 下面的代码有一些问题,找出来:

#include

using namespace std;

class Test{

public:

int *p;

Test(int v){

p = new int(v);

}

~Test(){

delete p;

}

void PrintValue(){

cout << "The value is " << *p << '\n';

}

};

void Func(Test t)

{

cout << "In the Func" << endl;

}

int main()

{

Test t1 = 33;

Func(t1);

();

}

平台,不提供任何相关库函数和工具包,只利用线程的随机调度特性和sleep 函数的低精度特性,请编写一段程序实现:给一组字符,输出该组字符的一个随机化排列。

阿里巴巴校园招聘笔试试题研发工程师

第一部分单选题(前10题,每题2分;后10题,每题3分,共50分。选对得满分,选错倒扣1分,不选得0分) 1.12345*12345 1105266261所采用的是多少进制的计算?() A、2进制 B、8进制 C、10进制 D、16进制 2. 关于HTTP协议的说明,一下哪项是错误的?() A、在CS模式下,作为一种request-response协议 B、无状态,对每一个请求看成独立的 C、HTTP是WWW和Email使用的协议 D、HTTP响应包括数字状态码,404经常代表“PageNot Found” 3. 以下程序输出结果是哪个?() char msg[] = “AAAA”; strcpy(msg, “BBB”); strcpy(msg, “CC”); strcpy(msg, “D”); printf(“%s”,msg); A、DCBA B、ABCD C、D D、A 4.使用gcc默认对齐规则的情况下,下列两个数据结构的sizeof各是多少?()struct FirstStruct{ char a; uint64_t b; uint32_t c; uint32_t d; }; struct SecondStruct{ char a; uint32_t b; uint32_t c; }; A、17,13 B、24,16 C、24,24 D、32,16 5. 关于内联函数,以下哪项叙述是错误的?() A、递归函数不能定义为内联函数 B、内联函数只能先定义后使用 C、任何源文件,使用内联函数必须包含函数定义 D、Main函数可以内联 6. 执行IO时,直接调用内核异步API,内核完成IO操作后再回调用户,这种IO模式是什么?() A、BIO B、NIO C、AIO D、FIO

阿里巴巴实习生笔试题含答案

阿里巴巴实习生笔试题含答案

答案:D 内联函数: Tip:只有当函数只有10 行甚至更少时才将其定义为内联函数. 定义: 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按一般的函数调用机制进行调用. 优点: 当函数体比较小的时候, 内联该函数能够令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用内联. 缺点: 滥用内联将导致程序变慢. 内联可能使目标代码量或增或减, 这取决于内联函数的大小. 内联非常短小的存取函数一般会减少代码大小, 但内联一个相当大的函数将戏剧性的增加代码

大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。 结论: 一个较为合理的经验准则是, 不要内联超过10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用! 另一个实用的经验准则: 内联那些包含循环或switch 语句的函数常常是得不偿失(除非在大多数情况下, 这些循环或switch 语句从不被执行). 注意:有些函数即使声明为内联的也不一定会被编译器内联, 这点很重要; 比如虚函数和递归函数就不会被正常内联. 一般, 递归函数不应该声明成内联函数.(递归调用堆栈的展开并不像循环那么简单, 比如递归层数在编译时可能是未知的, 大多数编译器都不支持内联递归函数). 虚函数内联的主要原因则是想把它的函数体放在类定义内, 为了图个方便, 抑或是当作文档描述其行为, 比如精短的存取函数. -inl.h文件: Tip:复杂的内联函数的定义, 应放在后缀名为-inl.h 的头文件中.

阿里巴巴笔试题(南京站,20011年9月)

阿里巴巴笔试题目(20011.9) 技术类笔试试题(卷一)卷一:Java开发、测试工程师(25题) 技术类笔试试题(卷二)卷二:搜索研发、 C++(25题) 1. 20个阿里巴巴B2B技术部的员工被安排为4排,每排5个人,我们 任意选其中4人送给他们一人一本《effective c++》,那么我们 选出的4人都在不同排的概率为: A.5^4*5!*15!/20! B. 4^5*5!*15!/20! C. 5^4*4!*16!/20! D. 4^5*4!*16!/20! 2. 若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行的关键字依次为: A.f,c,b B.f,d,b C.g,c,b D.g,d,b 3. perl里面声明:open(FILE, mode,file); 操作的描述,下列哪项不正确? A. FILE可以用变量$file来代替 B. mode可以和file写在一起,例如:open(FILE, ‘>file’) C. mode为+<的时候,只可以读文件,不能写文件 D. mode可以省略不写 4. 有一虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页 A.7 B.8

C.9 D.10 5. 设有一个顺序栈S,元素s1,s2,s3,s4,s5, s6依次进栈,如果六个元素的出栈顺序为s2,s3,s4,s6,s5,s1,则顺序栈的容量至少应为多少 A.2 B.3 C.4 D.5 6. 下列关于文件索引结构的叙述中,哪一个是错误的? A. 采用索引结构,逻辑上连续的文件存放在连续的物理块中 B. 系统为每个文件建立一张索引表 C. 索引结构的优点是访问速度快,文件长度可以动态变化 D. 索引结构的缺点是存储开销大 7. 在ASC算法team日常开发中,常常面临一些数据结构的抉择,令人纠结。目前大家在策划一个FBI项目(Fast Binary Indexing),其中用到的词汇有6200条,词汇长度在10-15之间,词汇字符是英文字母,区分大小写。请在下面几个数据结构中选择一个使检索速度最快的: A. 二叉搜索树,比较函数开销:1次运算/每字符 B. 哈希表,hash算法开销:10次运算/每字符 C. 链表,比较函数开销:1次运算/每字符 D. TRIE树,寻找子节点开销:1次运算/每字符 8. [0,2,1,4,3,9,5,8,6,7]是以数组形式存储的最小堆,删除堆顶元素0后的结果是: A. [2,1,4,3,9,5,8,6,7] B. [1,2,5,4,3,9,8,6,7] C. [2,3,1,4,7,9,5,8,6] D. [1,2,5,4,3,9,7,8,6] 9. 某页式存储管理系统中,地址寄存器长度为24位,其中页号为14位,则主存的分块大小是()字节。 A.10 B.2^10

2020阿里巴巴校园招聘阿里云C++笔试试题

阿里云C++ 1、(2分)1)请列出两个线程(或进程)死锁的三个必要条件 2)当异常(Exception)发生的时候,智能指针(SmartPointer)的析构函数是被谁调用的? 3)一般的台式机硬盘一次随机读写大约需要多少毫秒(0.1ms、1ms、10ms、100ms)? 4)除了应用程序的系统调用之外,LinuxKernel中的代码在什么情况下还有机会运行? 2、(1分)求下面函数的返回值。输入x的值为2012。 int func(int x) { int countx=0; while(x) { ++countx; x=x&(x-1); } return countx; } 3、(1分)一进程在执行时,如果按下列页号访问:1、2、3、 4、2、1、 5、 6、2、1、2、3、 7、6、3。进程占用4页物理内存,采用FIFO淘汰算法和LRU淘汰算法时,各产生多 少次缺页中断?分别写出使用两种方法时,依次被淘汰的页面号以及最后内存空间中剩余的页面。 4、(1分)写出下列程序的输出结果: #include using name space std; int main() { char *a=”Aliyun”; char **b=&a; *b=”programming test”; char *c=++a; a=”talents.”; return printf(“%c\n,*++c); } 5、(1分)连接A、B两地的公路长240km,现各有一列汽车分别从两地出发相向而行,各自保持匀速50km/h和30km/h。有一鸟儿也和A地的汽车一起从A地出发,以65km/h的速度沿公路朝B地飞行;当它遇到B地的汽车的时候,折返往A飞;再遇到A地汽车的时候,折返往B飞;如此往返。请问当A、B两地出发的汽车相遇的时候,鸟儿飞行了多少km? 6、(1分)一个骰子有6个面,分别是1个1、2个2、3个3。请问平均需要抛多少次骰子才能使1、2、3这三面都至少出现一次。

阿里巴巴笔试题+解析(完整)

阿里巴巴面试题 1、 20个阿里巴巴B2B技术部的员工被安排为4排,每排5个人,我们任意选其中4人送给他们一人一本《effective c++》,那么我们选出的4人都在不同排的概率为: A、 5^4*5!*15!/20! B、 4^5*5!*15!/20! C、 5^4*4!*16!/20! D、 4^5*4!*16!/20! 2、若有序表的关键字序列为(b,c,d,e,f,g,q,r,s,t),则在二分查找关键字b的过程中,先后进行的关键字依次为: A、f,c,b B、f,d,b C、g,c,b D、g,d,b 3、 perl里面声明:open(FILE,mode,file); 操作的描述,下列哪项不正确? A、 FILE可以用变量$file来代替 B、 mode可以和file写在一起,例如:open(FILE, ‘>file’) C、 mode为+<的时候,只可以读文件,不能写文件(既可以读也可以写) D、 mode可以省略不写 4、有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页? A、7 B、8 C、9 D、10 5、设有一个顺序栈S,元素s1、s2、s3、s4、s5、s6依次进栈,如果6个元素的出栈顺序为s2、s3、s4、s 6、s5、s1,则顺序栈的容量至少应为多少? A、2 B、3 C、4 D、5 6、下列关于文件索引结构的叙述中,哪一个是错误的? A、采用索引结构,逻辑上连续的文件存放在连续的物理块中 B、系统为每个文件建立一张索引表 C、索引结构的优点是访问速度快,文件长度可以动态变化 D、索引结构的缺点是存储开销大 7、在ASC算法team日常开发中,常常面临一些数据结构的抉择,令人纠结。目前大家在策划一个FBI项目(Fast Binary Indexing),其中用到的词汇有6200条,词汇长度在10-15之间,词汇字符是英文字母,区分大小写。请在下面几个数据结构中选择一个使检索速度最快的: A、二叉搜索树,比较函数开销:1次运算/每字符 B、哈希表,hash算法开销:10次运算/每字符 C、链表,比较函数开销:1次运算/每字符 D、 TRIE树,寻找子节点开销:1次运算/每字符 8、【0、2、1、4、3、9、5、8、6、7】是以数组形式存储的最小堆,删除堆顶元素0后的结果是() A、【2、1、4、3、9、5、8、6、7】 B、【1、2、5、4、3、9、8、6、7】

百一测评——2015年阿里巴巴校园招聘在线笔试题目

职业技能题库&在线云笔试平台https://www.360docs.net/doc/ca10873106.html, 试卷名称:2015年阿里巴巴校园招聘在线笔试题目 试卷描述:在线考试、招聘笔试、微信考试 试卷链接:https://www.360docs.net/doc/ca10873106.html,/paperDetail?paperId=40473 试卷限时:50分钟 一.不定项项选择题 每题分值:5分 是否题目乱序:是 是否选项乱序:是 是否可回溯:是 难度:中 1.[不定项]通过算法生成的随机数是“伪随机”的,也就是说,在设定好第一个数之后,后 面的数字的序列是确定的,并且经过一个非常大的循环会回到第一个数的状态,然后周而复始。显然,摇号、抽奖的程序是不能通过伪随机数来实现的。现实中常常基于某种热噪声来实现真正的随机数。假定某热噪声是标准正态分布,那么能否将它转换成(0,1)区间上的均匀分布______? A. 忽略测量和计算误差,可以转换为(0,1)区间上的均匀分布。 B. 无法转换为(0,1)区间上的均匀分布。 C. 信息不足,无法判断。 D. 借助伪随机数生成算法可以转换为(0,1)区间上的均匀分布。 E. 仅仅靠伪随机数生成算法,就可以生成(0,1)区间上的均匀分布 F. 以上说法都不对。

职业技能题库&在线云笔试平台https://www.360docs.net/doc/ca10873106.html, 答案:A 2.[不定项]在一个童话世界里,任意两个人之间要么是朋友关系,要么是敌人关系,不存在 其他关系及没有关系的情况。并且,如果A和B是朋友关系,B和C是朋友关系,那么A 和C必然是朋友关系。那么关于这个童话世界中的人群的说法错误的是:______? A. 可能只有1个人群,这个人群内部是朋友关系。 B. 可能有2个人群,人群内部是朋友关系,人群之间是敌人关系。 C. 可能有3个及以上个人群,人群内部是朋友关系,人群之间是敌人关系。 D. 如果存在多个人群,并且人群内部是朋友关系,人群之间是敌人关系,那么这些人群必然是差不多大小的。 E. 选项B中的情况可以是其中一个人群只有一个人,另外一个人群可以由很多人。 F. 这样一个世界里朋友关系是比较不容易发生变化的。 答案:D 3.[不定项]12321能被写成______种两个质数相加的形式。 A. 0 B. 1 C. 2 D. 3 E. 4 F. 5 答案:A 4.[不定项]在小端序的机器中,如果

阿里巴巴校园招聘阿里云笔试试题题目

1.有一个文件:c:/c.txt,写java程序把该文件内容复制两遍,追加到c:/c.txt; 2.写正则表达式1.邮箱2.数字 3.HashMap 改变map类对用户会不会有影响? 4.Linux中需查看所有的java进程,用什么命令 ps -ef|grep java 5.Ajax请求的整个流程 AJAX 在浏览器与Web 服务器之间使用异步数据传输(HTTP 请求),这样就可使网页从服务器请求少量的信息,而不是整个页面。 open():建立到服务器的新请求。 send():向服务器发送请求。 abort():退出当前请求。 readyState:提供当前 HTML 的就绪状态。 responseText:服务器返回的请求响应文本。 6.写一个类实现线程同步的单例设计模式 7.一个包含4块硬盘的服务器一年中至少有一块硬盘出故障的概率是99.99%,每块硬盘任意时刻出故 障的概率服从相同的分布规律,并且彼此独立,问12块硬盘的服务器一季度内至少有一个硬盘出故障的概率是多少。 8.有一个size1000的ector,删除其中的第5,6,7号元素,要求效率高(C) 9.数列L中有n个整数,其中K个数字出现了两次,1个数字出现了一次,所以n=2k+1; 请在使用O(1)空间的前提下,尽快找出只出现一次的那个数字,并说明算法的复杂度。用异或,时间复杂度O(n) 10.有一个文件,存在40亿个不重复的整数(0~4294967295),可用内存只有256M,32比 特的整数有4294967295(约42.9亿)种取值可能,如何找出不存在的294967295(约 2.9亿)个数扫描结果数据可存放到文件中,不占用内存 分段载入内存,排序,输出,一共要扫描文件2^32/(256*2^20/32)=512遍 BITMAP分16次处理 建42.9bits的文件,按200m一段映射,先遍历40亿个数,检查n/有8字节位置是否在当前映射区,否则换映射位置,然后标记。然后读 2.9亿检查,都一个道理,建在共享内存里的bitmap 而已。 位图算法,用含有1千万个位的字符串来表示这个文件,文件中有的数据则标识为1,没有则标识为0,最后从第一位读至最后一位,即为有序的集合。这种算法充分利用了题目中给的条件,但也仅仅适合本题目,(不会有重复的数字,同时不与其余的数进行关联)

阿里巴巴2014秋季校园招聘-软件研发工程师笔试题

阿里巴巴2014秋季校园招聘-软件研发工程师笔试题 2013-09-21 22:381089人阅读评论(4)收藏举报 校园招聘阿里巴巴软件研发算法百度 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:

2015校招-阿里巴巴在线笔试题目

1、某团队有 2/5的人会写Java程序,有3/4的人会写C++程序,这个团队里同时会写Java和C++的最少有______人。 3 4 5 8 15 20 2、下列结构中,______必须随机存取实现。 栈 队列 数组 单链表 二叉树 堆 3、在一个单链表中,q的前一个节点为p,删除q所指向节点,则执行______。delete q; q->next=p->next;delete p; p->next=q->next;delete p; p->next=q->next;delete q; delete p; q->next=p->next;delete q 4、带头结点的单链表head为空的判定条件是:______。 head==NULL head->next==NULL head->next==head head!=NULL *head==NULL *(head->next)==NULL 5、甲乙两路发车间隔均为10分钟的公交车发车时刻分钟数个位分别为1和9,那么对于一个随机到达的乘客,ta乘坐甲车的概率为: 0.1 0.2 0.3 0.4 0.5 0.9 6、硬币游戏:连续扔硬币,直到某一人获胜。A获胜条件是先正后反,B获胜是出现连续两次反面,问AB游戏时A获胜概率是______。 1/6 1/4

1/2 2/3 3/4 7、棋盘上共有2020个格子,从1开始顺序编号。棋子初始放在第1格,通过扔骰子决定前进格子数,扔出x点就前进x格。骰子有6面,分别对应1至6;质量均匀。当棋子到达2014或超过2014,游戏结束。那么,棋子刚好到达2014的概率与______最接近。 2/3 1/2 1/3 2/7 1/6 1/7 8、“秘密”是一款在朋友圈内匿名交流的SNS平台。假定每个人只能看到朋友发的帖子,却不知道具体是谁发的;并且朋友关系是对称的,即如果A是B的朋友,那么B也是A的朋友。某好事者希望知道一篇帖子具体是谁发的,他通过找几个好友看看他们是否是这个帖子楼主的朋友,从而求“交集”,推断楼主是谁。朋友圈是指彼此互为朋友的人群。什么样的楼主容易被发现真实身份? 朋友很多的楼主。 朋友很少的楼主。 发负能量帖子的楼主。 有很多个小朋友圈的楼主。 发正能量帖子的楼主。 只有一个大朋友圈的楼主。 9、H同学每天乘公交上学,早上睡过头或遇到堵车都会迟到;H早上睡过头概率为0.2,路上遇到堵车概率为0.5;若某天早上H迟到了,那么以下推测正确的有______。 今天H早上睡过头了 今天H早上睡过头的概率为0.2 今天H早上睡过头的概率大于0.2 今天H早上遇到堵车了 今天H早上遇到堵车的概率为0.5 今天H早上遇到堵车的概率小于0.5 10、一个合法的表达式由()包围,()可以嵌套和连接,如(())()也是合法表达式;现在有6对(),它们可以组成的合法表达式的个数为______。 15 30 64 132 256 360 11、下列结构中,______必须随机存取实现 栈 队列

阿里巴巴校园招聘笔试题及参考答案

阿里巴巴的Oracle DBA笔试题及参考答案- 数据库基本概念类 1:pctused and pctfree 表示什么含义有什么作用 pctused与pctfree控制数据块是否出现在freelist中, pctfree控制数据块中保留用于update的空间,当数据块中的free space小于pctfree设置的空间时, 该数据块从freelist中去掉,当块由于dml操作free space大于pct_used设置的空间时,该数据库块将 被添加在freelist链表中。 2:简单描述table / segment / extent / block之间的关系 table创建时,默认创建了一个data segment, 每个data segment含有min extents指定的extents数, 每个extent据据表空间的存储参数分配一定数量的blocks 3:描述tablespace和datafile之间的关系 一个tablespace可以有一个或多个datafile,每个datafile只能在一个tablespace内, table中的数据,通过hash算法分布在tablespace中的各个datafile中, tablespace是逻辑上的概念,datafile则在物理上储存了数据库的种种对象。 4:本地管理表空间和字典管理表空间的特点,ASSM有什么特点 本地管理表空间(Locally Managed Tablespace简称LMT) 8i以后出现的一种新的表空间的管理模式,通过位图来管理表空间的空间使用。 字典管理表空间(Dictionary-Managed Tablespace简称DMT) 8i以前包括以后都还可以使用的一种表空间管理模式,通过数据字典管理表空间的空间使用。 动段空间管理(ASSM), 它首次出现在Oracle920里有了ASSM,链接列表freelist被位图所取代,它是一个二进制的数组, 能够迅速有效地管理存储扩展和剩余区块(free block),因此能够改善分段存储本质,ASSM表空间上创建的段还有另外一个称呼叫Bitmap Managed Segments(BMB 段)。 5:回滚段的作用是什么 事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中, 当用户回滚事务(ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值。 事务恢复:当事务正在处理的时候,例程失败,回滚段的信息保存在undo表空间中,ORACLE将在下次打开数据库时利用回滚来恢复未提交的数据。 读一致性:当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。 当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性) 当ORACLE执行Select语句时,ORACLE依照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN) 来保证任何前于当前SCN的未提交的改变不被该语句处理。可以想象:当一个长时间的查询正在执行时, 若其他会话改变了该查询要查询的某个数据块,ORACLE将利用回滚段的数据前影像来构造一个读一致性视图。 6:日志的作用是什么

阿里巴巴2017实习生笔试题(含答案)

答案:D 内联函数: Tip:只有当函数只有 10 行甚至更少时才将其定义为内联函数. 定义: 当函数被声明为内联函数之后, 编译器会将其内联展开, 而不是按通常的函数调用机制进行调用. 优点: 当函数体比较小的时候, 内联该函数可以令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用内联. 缺点: 滥用内联将导致程序变慢. 内联可能使目标代码量或增或减, 这取决于内联函数的大小. 内联非常短小的存取函数通常会减少代码大小, 但内联一个相当大的函数将戏剧性的增加代码大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。 结论: 一个较为合理的经验准则是, 不要内联超过 10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用! 另一个实用的经验准则: 内联那些包含循环或switch 语句的函数常常是得不偿失 (除非在大多数情况下, 这些循环或 switch 语句从不被执行). 注意:有些函数即使声明为内联的也不一定会被编译器内联, 这点很重要; 比如虚函数和递归函数就不会被正常内联. 通常, 递归函数不应该声明成内联函数.(递归调用堆栈的展开并不像循环那么简单, 比如递归层数在编译时可能是未知的, 大多数编译器都不支持内联递归函数). 虚函数内联的主要原因则是想把它的函数体放在类定义内, 为了图个方便, 抑或是当作文档描述其行为, 比如精短的存取函数.

-inl.h文件: Tip:复杂的内联函数的定义, 应放在后缀名为 -inl.h 的头文件中. 内联函数的定义必须放在头文件中, 编译器才能在调用点内联展开定义. 然而, 实现代码理论上应该放在 .cc 文件中, 我们不希望 .h 文件中有太多实现代码, 除非在可读性和性能上有明显优势. 如果内联函数的定义比较短小, 逻辑比较简单, 实现代码放在 .h 文件里没有任何问题. 比如, 存取函数的实现理所当然都应该放在类定义内. 出于编写者和调用者的方便, 较复 杂的内联函数也可以放到 .h 文件中, 如果你觉得这样会使头文件显得笨重, 也可以把它萃取到单独的-inl.h 中. 这样把实现和类定义分离开来, 当需要时包含对应的 -inl.h 即可。 A 项错误,因为使用inline 关键字的函数只是用户希望它成为内联函数,但编译器有 权忽略这个请求,比如:若此函数体太大,则不会把它作为内联函数展开的。 B 项错误,头文件中不仅要包含inline 函数的声明,而且必须包含定义,且在定义时 必须加上inline 。【关键字inline 必须与函数定义体放在一起才能使函数成为内联,仅将inline 放在函数声明前面不起任何作用】 C 项错误,inline 函数可以定义在源文件中,但多个源文件中的同名inline 函数 的实现必须相同。一般把inline 函数的定义放在头文件中更加合适。 D 项正确,类内的成员函数,默认都是inline 的。【定义在类声明之中的成员函数将

阿里巴巴集团笔试题目

阿里巴巴集团笔试题目 下面是由应届毕业生网分享的题目 第一题、5亿个不重复的商品的ID(每一个商品的ID是64位),现在有一个存放了10亿个商品ID(商品的ID会有重复)的日志文件,请设计一种方法找出5亿个商品中没有出现在日志文件中的商品。假设所能使用的内存为2G。 [html] view plaincopyprint? 01.2G的文件只能存放2.5亿的商品ID,因为5亿商品大小为5*10*8B=4G。可以考虑将5亿商品ID哈希到四个文件中A[4]。然后将10亿个商品哈希到另外四个文件中B[4]。每次读入一个A文

件读入一个B文件,将B文件哈希到A文件中,A文件中的值为0的键值就是没有被日志文件包含的。但是日志文件分成四个之后,每一个的大小事2G无法一次性的读入,可以一次读一半或者分成8个文件。以上为博主的思路,欢迎各位指正。 2G的文件只能存放2.5亿的商品ID,因为5亿商品大小为5*10*8B=4G。可以考虑将5亿商品ID哈希到四个文件中A[4]。然后将10亿个商品哈希到另外四个文件中B[4]。每次读入一个A文件读入一个B文件,将B文件哈希到A文件中,A文件中的值为0的键值就是没有被日志文件包含的。但是日志文件分成四个之后,每一个的大小事2G无法一次性的读入,可以一次读一半或者分成8个文件。以上为博主的思路,欢迎各位指正。[cpp] view plaincopyprint? 01. 第二题、有一个词组的列表,list string wordlist={ a boy , hello word , small cat ,.......};有一个字符串string stringlist={ a boy can catch small cats }.

阿里巴巴校招产品经理笔试题

阿里巴巴校招产品经理笔试题目 【业务性产品经理(商业领域)笔试题】 (开放题,每人选做其中五道即可) 1.如果让你作天猫、淘宝7月某类目销量分析,你会怎么做?现在大家都在讲O2O, 清谈一下你对O2O的理解以及对客户的价值所在,并且以商家的角度,描述一下 你观察到的他们的核心痛点有哪些? 2.如果你手上的资源短期只能解决一个痛点的话,你会怎么来选择?为什么?后期的 优先级是怎么排列的? 3.如果让你设计一款相册APP,代替系统自带的相册功能,你会怎么设计,列举主要 功能(先分析原生相册的不足,用户需求痛点,然后描述下界面设计,并说明为什 么用户要使用你的产品) 4.如何验证一个产品优化方案是否有效选择旅游、商品、理财、食品、体育其中一类, 设计一个你觉得有需求且目前没有得到较好满足的功能,可以是一款小而美的产品,也可以是承载在某一款产品上的功能你最喜欢的互联网公司,其都有哪些优缺点, 如何改进? 5.最近扶梯安全事故频发,你是扶梯公司ceo,你怎么改善产品,怎么运营,怎么利 润最大化?设计一个果汁饮料,竞品有哪些,如何进行竞品分析?如何检测o2o 线下服务质量? 6.设计一个B2C营销盛典的页面,包括H5游戏。写出主要设计思路。分析淘宝中的 “淘抢购”频道的用户群体,用户需求,用户使用特性等等要设计一款果汁饮料, 做竞品分析。写出主要的竞争对手有哪些,并说明主要思路规划一款预订理发的

APP假如您现在需要为一家企业做一款社交软件,请描述一个完整的产品规划到实施的过程包括哪些部分。 7.如果我是一个风投,现在要给你一笔费用和一个团队。请设计一个针对南美市场的 跨境电商产品。请说明你需要多少费用和什么样的团队,将在一年内将这个产品做到什么样,达成什么目标? 8.假设美国亚马逊网站7-8月的网站访客流量比6月下降了10%,如果你是亚马逊 网站的流量分析产品经理,请解释分析下这个现象。 9.如果你是上门服务O2O的产品经理你将通过何种方式保证上门服务的质量现在大 型超市食品类柜台经常有试吃活动请谈谈顾客是怎样的消费心理,这对用户的购买率是否有影响?为什么? 10.如果有一位没用任何营销技能,甚至不能说话的销售员,你是否愿意让他/她去试 吃柜台为用户服务,这对用户的购买率是否有影响?为什么? 11.淘宝目前的哪个业务你觉得最受人吐槽,为什么以及如果做好了会怎么样。为老人 设计打车软件你熟悉的社交软件相较于其他社交软件的优劣势对天猫淘宝7月份某类目商品销量进行分析。 12.说出你喜欢的获取互联网资讯的途径,比如app,微信微博等,并分析其核心竞争 力你自己是否有产品的经历?如果有,需求是如何发现的?解决了什么问题?假如你是一个村支书,村里目前修路需要占用一部分土地,部门村民对被占用土地的赔偿金额感到不满,鼓动了一批民众到工地闹事,已经演变成聚众事件,你将如何解决?【 阿里巴巴校招运营专员笔试题】

阿里巴巴笔试题

1.自我介绍 2.介绍一个你所做过的测试项目 3.bug状态的转换,及各状态转换执行人是谁 4.介绍软件测试流程 5.如果你和开发人员出现分歧怎么办 6.如果第二天就到交付日了,回归测试还没有执行完毕,你该怎么办? 7.你有女/男朋友么?你未来如何打算? 8.你还有什么要问我的问题么? 9.我是做功能测试的,功能测试比较枯燥,你怎么认为? 、要对语句A>1 OR B <= 3 测试……(不记得了)100%覆盖,至少要多少测试用例 2、典型的针对系统漏洞的Dos攻击? 3、4,2,2,3,6,15,(?)A,20 B,24 C,25 D,45 4、3升,5升,7升量筒,已知3、5量筒装满水,7量筒为空,问至少要倒多少次才能使其中一个量筒的水为4升 5、太长了 6、太长了 7、保护邮件安全的软件? 8、普通用户执行超级用户文件的指令 9、软件测试对象 10、软件缺陷生命期 11、OPENAPI平台 12、超长字符串攻击属于? 13、项目的最重要的是()和() 14、可能引起Cross Site Scripting攻击的是? 15、马可夫模型(HMM)的三个基础?(非选择) 16、有序集合a, b,求交集(非选择) 转载请注明出自应届生求职招聘论坛https://www.360docs.net/doc/ca10873106.html,/,本贴地址:https://www.360docs.net/doc/ca10873106.html,/thread-33014-1-1.html DBA笔试题 一:SQL tuning 类 1 列举几种表连接方式 等连接、非等连接、自连接、外连接(左、右、全)

2 不借助第三方工具,怎样查看sql的执行计划 I) 使用Explain Plan,查询PLAN_TABLE; EXPLAIN PLAN SET STA TEMENT_ID='QUERY1' FOR SELECT * FROM a WHERE aa=1; SELECT operation, options, object_name, object_type, ID, parent_id FROM plan_table WHERE STA TEMENT_ID = 'QUERY1' ORDER BY ID; II)SQLPLUS中的SET TRACE 即可看到Execution Plan Statistics SET AUTOTRACE ON; 3:如何使用CBO,CBO与RULE的区别 IF 初始化参数OPTIMIZER_MODE = CHOOSE THEN --(8I DEFAULT) IF 做过表分析 THEN 优化器Optimizer=CBO(COST); /*高效*/ ELSE 优化器Optimizer=RBO(RULE); /*高效*/ END IF; END IF; 区别: RBO根据规则选择最佳执行路径来运行查询。 CBO根据表统计找到最低成本的访问数据的方法确定执行计划。 使用CBO需要注意: I) 需要经常对表进行ANALYZE命令进行分析统计; II) 需要稳定执行计划; III)需要使用提示(Hint); 使用RULE需要注意: I) 选择最有效率的表名顺序 II) 优化SQL的写法; 4 如何定位重要(消耗资源多)的SQL 使用CPU多的用户session SELECT a.SID, spid, status, SUBSTR (a.program, 1, 40) prog, a.terminal,a.SQL_TEXT, osuser, V ALUE / 60 / 100 V ALUE FROM v$session a, v$process b, v$sesstat c WHERE c.statistic# = 12 AND c.SID = a.SID AND a.paddr = b.addr ORDER BY V ALUE DESC; 5 如何跟踪某个session的SQL 利用TRACE 跟踪 ALTER SESSION SET SQLTRACE ON; COLUMN SQL format a200; SELECT machine, sql_text SQL

阿里巴巴校园招聘笔试题目

2015年阿里巴巴校园招聘笔试题目 笔试时间为2014年8月29日,均为网上答题。第一部分为单选题,共20题,要在40分钟内完成。每个人的选择题都不一样,应该是后台有题库,每个人的试卷都是随机生成的。第二部分为附加题,一般为1道问答题,2道编程题。。 通过算法生成的随机数是“伪随机”的,也就是说,在设定好第一个数之后,后面的数字的序列是确定的,并且经过一个非常大的循环会回到第一个数的状态,然后周而复始。显然,摇号、抽奖的程序是不能通过伪随机数来实现的。现实中常常基于某种热噪声来实现真正的随机数。假定某热噪声是标准正态分布,那么能否将它转换成区间上的均匀分布______? 忽略测量和计算误差,可以转换为区间上的均匀分布。 无法转换为区间上的均匀分布。 信息不足,无法判断。 借助伪随机数生成算法可以转换为区间上的均匀分布。 仅仅靠伪随机数生成算法,就可以生成区间上的均匀分布 以上说法都不对。 在一个童话世界里,任意两个人之间要么是朋友关系,要么是敌人关系,不存在其他关系及没有关系的情况。并且,如果A和B是朋友关系,B和c是朋友关系,那么A和c必然是朋友关系。那么关于这个童话世界中的人群的说法错误的是:______?

可能只有1个人群,这个人群内部是朋友关系。 可能有2个人群,人群内部是朋友关系,人群之间是敌人关系。 可能有3个及以上个人群,人群内部是朋友关系,人群之间是敌人关系。 如果存在多个人群,并且人群内部是朋友关系,人群之间是敌人关系,那么这些人群必然是差不多大小的。 选项B中的情况可以是其中一个人群只有一个人,另外一个人群可以由很多人。 这样一个世界里朋友关系是比较不容易发生变化的。 12321能被写成______种两个质数相加的形式。 1 2 3 4 5 在小端序的机器中,如果 unionX{ intx; chary[4]; }; 如果:

阿里巴巴Oracle-DBA笔试题及答案

一:SQL tuning 类 1:列举几种表连接方式 hash join/merge join/nest loop(cluster join)/index join 2:不借助第三方工具,怎样查看sql的执行计划 set autot on explain plan set statement_id = &item_id for &sql; select * from table(dbms_xplan.display); https://www.360docs.net/doc/ca10873106.html,/docs/cd/B14117_01/server.101/b10752/ex_plan.htm 3:如何使用CBO,CBO与RULE的区别 在optimizer_mode=choose时,如果表有统计信息(分区表外),优化器将选择CBO,否则选RBO。 RBO遵循简单的分级方法学,使用15种级别要点,当接收到查询,优化器将评估使用到的要点数目, 然后选择最佳级别(最少的数量)的执行路径来运行查询。 CBO尝试找到最低成本的访问数据的方法,为了最大的吞吐量或最快的初始响应时间,计算 使用不同 的执行计划的成本,并选择成本最低的一个,关于表的数据内容的统计被用于确定执行计划。 4:如何定位重要(消耗资源多)的SQL select sql_text from v$sql where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000); 5:如何跟踪某个session的SQL exec dbms_system.set_sql_trace_in_session(sid,serial#,&sql_trace); select sid,serial# from v$session where sid = (select sid from v$mystat where rownum = 1); exec dbms_system.set_ev(&sid,&serial#,&event_10046,&level_12,''); 6:SQL调整最关注的是什么 查看该SQL的response time(db block gets/consistent gets/physical reads/sorts (disk)) 7:说说你对索引的认识(索引的结构、对dml影响、为什么提高查询性能) b-tree index/bitmap index/function index/patitional index(local/global) 索引通常能提高select/update/delete的性能,会降低insert的速度, 8:使用索引查询一定能提高查询的性能吗?为什么 索引就是为了提高查询性能而存在的,

阿里巴巴2017实习生笔试题(含答案)

答案:D 联函数: Tip:只有当函数只有 10 行甚至更少时才将其定义为联函数. 定义: 当函数被声明为联函数之后, 编译器会将其联展开, 而不是按通常的函数调用机制进行调用. 优点: 当函数体比较小的时候, 联该函数可以令目标代码更加高效. 对于存取函数以及其它函数体比较短, 性能关键的函数, 鼓励使用联. 缺点: 滥用联将导致程序变慢. 联可能使目标代码量或增或减, 这取决于联函数的大小. 联非常短小的存取函数通常会减少代码大小, 但联一个相当大的函数将戏剧性的增加代码大小. 现代处理器由于更好的利用了指令缓存, 小巧的代码往往执行更快。 结论: 一个较为合理的经验准则是, 不要联超过 10 行的函数. 谨慎对待析构函数, 析构函数往往比其表面看起来要更长, 因为有隐含的成员和基类析构函数被调用! 另一个实用的经验准则: 联那些包含循环或 switch 语句的函数常常是得不偿失 (除非在大多数情况下, 这些循环或 switch 语句从不被执行). 注意:有些函数即使声明为联的也不一定会被编译器联, 这点很重要; 比如虚函数和递归函数就不会被正常联. 通常, 递归函数不应该声明成联函数.(递归调用堆栈的展开并不像循环那么简单, 比如递归层数在编译时可能是未知的, 大多数编译器都不支持联递归函数). 虚函数联的主要原因则是想把它的函数体放在类定义, 为了图个方便, 抑或是当作文档描述其行为, 比如精短的存取函数. -inl.h文件: Tip:复杂的联函数的定义, 应放在后缀名为 -inl.h 的头文件中. 联函数的定义必须放在头文件中, 编译器才能在调用点联展开定义. 然而, 实现代码理论上应该放在 .cc 文件中, 我们不希望 .h 文件中有太多实现代码, 除非在可读性和性能上有明显优势. 如果联函数的定义比较短小, 逻辑比较简单, 实现代码放在 .h 文件里没有任何问题. 比如, 存取函数的实现理所当然都应该放在类定义. 出于编写者和调用者的方便, 较复杂的

相关文档
最新文档