文档库 最新最全的文档下载
当前位置:文档库 › 2013年阿里巴巴校园招聘笔试试题研发工程师

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

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

第一部分单选题(前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是使用的协议

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

7. 若系统中有5台打印机,有多个进程需要使用两台,规定每个进程一次仅允许申请一台,则至多允许多少个进程参与竞争,而不会发生死锁?()

A、2

B、3

C、4

D、5

8. 一个栈的入栈序列为abcde,则不可能的输出序列为哪个?()

A、edcba

B、dceab

C、decba

D、abedc

9. 关于C程序运行内存空间的说法错误的是哪项?()

A、全局变量,static变量位于数据区,无需应用程序分配

B、局部变量的作用域是当前的函数或程序块,出作用域之后无效

C、在堆上分配内存需要调用malloc函数,并且需要调用free函数释放

D、递归程序的递归深度主要受限于堆的空间大小,超过大小限制程序会崩溃

10. 以下关于数组说法正确的是哪项?()

A、建立公用数组,在模块声明阶段用private语句

B、数组设定没有上下界

C、二维数组初始化时要在类型说明时给各下标变量赋予初值

D、对数组元素赋予初始值时一定要标注长度说明

11. 下列情况中,不能使用栈(stack)来解决问题的是哪个?()

A、将数学表达式转化为后缀形式

B、实现递归算法

C、高级编程语言的过程调用

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

12. 已知数据表中每个元素距其最终位置不远,为节省时间,应该采用的算法是什么?()

A、直接选择排序

B、堆排序

C、快速排序

D、直接插入排序

13. Skip List是一个非常优秀的数据结构,实现简单的插入、删除、查找复杂度为(logN),当该数据结构中插入一个元素遇到最坏情况下的时间复杂度是多少?()

A、O(N)

B、O(logN)

C、O(√N)

D、O(N logN)

14. 设一棵二叉树中有3个叶子结点,8个“深度”为1的结点,则该二叉树中总的节点数为多少?()

A、11

B、12

C、13

D、14

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

A、堆排序

B、希尔排序

C、快速排序

D、直接选择排序

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

A、1分钟20秒

B、1分钟40秒

C、2分钟30秒

D、3分钟20秒17.有一堆石子共100枚,甲乙轮流从该堆中取石子,每次可以取2,4,6枚,取得最后的石子的玩家为赢家,若家先取,则以下说法正确的是哪项?()

A、甲有必胜策略

B、乙有必胜策略

C、双方都没有必胜策略

D、不确定

18. 有4人抬着三个货物出门,遇到一条河,他们四个人游过河的时间分别为1,3,8,15(分钟)。每个货物必须要由两个人托起才不会被浸湿,为防止货物失窃,所有货物需要有人看守,请问他们最少要花几分钟才能完成渡河?()

A、15

B、20

C、23

D、25

19. 某班有25名学生,其中14人会打篮球,12人会打排球,6人会打篮球和排球,5人会打篮球和网球,还有2人这三种球都会打。而6个会打网球的人都会打另外一种球。请问25人中这三种球都不会打的人数是多少?()

A、3

B、4

C、5

D、6

20. 在一个N*N个方格的国际象棋盘上,knight从任意一个指定的方格出发,按照1横2竖或者1竖2横的跳马规则(如下图从X开始可以走到任意一个Y)。走遍棋盘的每个格子,

且每个格子只走一次的跳法叫做一个骑士征程。请问,N最小为多少时,一个knight可以完成骑士征程?()

A、5

B、7

C、8

D、9

Y

Y

Y

Y

X

Y

Y

Y

Y

第二部分不定项选择(4题,每题5分。每题1-5个正确选项,完全正确计5分,漏选计2分,不选计0分,多选、错选扣2分)

21. 一段时间内只允许一个进程访问的资源被称作临界资源,针对临界资源,以下说法错误的是哪些?()

A、对临界资源是不能实现资源共享

B、只要能是程序并发执行,这些并发执行的程序可以对临界资源实现共享

C、为临界资源配上相应的设备控制块后,便能实现共享

D、对临界资源采用互斥访问方式,便能实现共享

22. 设存在三个函数f, g, h,分别为f(n)=53n~3+26n+18, g(n)=1500n~3+n~2, h(n)=15n~(1.5)+45n lg(n)。下列哪些关系是成立的,是哪几个?()

A、f(n) O(g(n))

B、g(n) O(f(n))

C、h(n) O(n~1.5)

D、h(n) O(n lg(n))

23. 假设在树中,节点x是节点y的双亲时,用(x,y)来代表树边。已知一棵树边的集合为{(i,m), (i,n), (e,i), (b,e), (b,d), (a,b), (g,j), (g,k), (c,g), (c,f), (h,i), (c,h), (a,c)},则下列说法正确的是哪

几个?()

A、a是根节点

B、g,h,i是f的兄弟

C、c是g的双亲

D、树的深度是5

24. 根据一项对程序员的界面和收入的调查发现:i)10%喜欢白底黑字,60%喜欢黑底绿字;ii)50%是高收入的。下面描述可能正确的是哪几个?()

A、一半的程序员是低收入的

B、30%喜欢黑底绿字的程序员是高收入的

C、没有程序员既喜欢白底黑字,又是高收入的

D、所有喜欢黑底绿字的程序员都不是高收入的

第三部分填空与问答(5题,共30分)

25. (4分)在操作系统的生产者消费者问题中,能否将生产者进程wait(empty)和wait(mutex)语句交换?为什么?

26.(5分)某人提着两个空水壶到池塘边打水,两个水壶的容积分别是5L和6L,而他被要求只需要带回3L水,请问至少需要多少次操作才能使得两个水壶中只有3L水。(提示:注水、倒水均算一个步骤,给出操作步骤和最终次数)

27.(6分)请指出二叉树后序遍历栈操作算法的关键,并给出最简单的算法思路。

28.(8分)请给出分别满足下面条件的所有二叉树。

(1)前序序列和中序序列相同(2)中序序列和后序序列相同

(3)前序序列和后序序列相同(4)前序、中序、后序序列都相同

29.(7分)以下的代码是一种广度优先搜索算法,请以下图中V0为源点执行以下算法,并回答问题:

(1)顶点Vn+1需要入队多少次?被重复访问了多少次?

(2)加黑斜体算法部分该如何做修改才能避免重复访问一个顶点的错误?

void BFS(ALGraph *G, int k)

{//以下省略局部变量的说明,visited各初始值为False

InitQueue(&Q);//置空队列

EnQueue(&Q, k);//k入队

while(!QueueEmpty(&Q)){

i DeQueue(&Q);//Vi出列

visited[i] True;//设置访问标记

print("%c", G->adjlist[i].vertex);//访问Vi

for(p G->adjlist[i].firstedge;p;p p->next)//依次搜索Vi的邻近点

if(!visited[p->adjvex])//若Vi没有访问过

EnQueue(&Q, p->adjvex);//Vi入列

} //endofwhile

}//BFS

第四部分:JAVA选做题(注:阿里有大量JAVA研发工程师需求;选作以下题目有机会增加该方向面试机会)

请画出工厂模式的uml图,并简要描述这些要素的作用;列举以下这个模式的优势;给出一个jdk源码中的例子。

Map是非常重要的数据结构,设计出一个Map的接口,用基于hash的算法简单实现这个

Map,如果对你实现的HashMap做支持高并发场景下的线程安全的优化,怎么改进?

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

第一部分单选题(前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

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

阿里巴巴面试题 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】

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

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

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

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

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

职业技能题库&在线云笔试平台https://www.wendangku.net/doc/a03699550.html, 试卷名称:2015年阿里巴巴校园招聘在线笔试题目 试卷描述:在线考试、招聘笔试、微信考试 试卷链接:https://www.wendangku.net/doc/a03699550.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.wendangku.net/doc/a03699550.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.[不定项]在小端序的机器中,如果

阿里巴巴_2014_用户体验研究专员_实习生_笔试题

加权算术平均数中权重(权数)的实质是? ?各组单位数之间的比值 ?各组的单位数 ?各组的单位数占总体单位数的比重 ?各组的单位数与指标值的乘积 非引导性的问题对访谈的成败起到重要作用,以下哪个选项跟“非引导性”无关? ?问题要关注直接体验 ?保持问题的封闭性 ?问题要客观 ?问题要关注单一主题 请问您以下对信度、效度相互关系的描述,哪个是正确的? ?信度高,效度也就高 ?效度高,信度也就高 ?信度低,效度也可能高 ?效度低,信度也就低 某地区到实体超市消费的人数呈下降趋势,2011年与2010年相比降低4%,2012年又比2011年降低6%,2013年是2012年的95%,则2013年与2010年相比,下降幅度为多少? ?12.0% ?85.7% ?14.3% ?88.0% ?以上都不是 在一次问卷调查中,我们对用户的网上购物态度进行了测量,测量使用了5分态度语句量表,事后我们希望根据用户的网上购物态度对用户进行分类,请问下列哪种统计分析方法是必须的? ?回归分析(Regression) ?相关分析(Correlation)

?聚类分析(Clustering) ?因子分析(Factor analysis) ?方差分析 在可用性测试过程中,请问以下哪些做法是正确的? ?在用户遇到障碍求助时,要积极回应用户的疑问 ?可以鼓励用户在测试过程中,说出自己的操作步骤及疑问 ?在用户遇到障碍时,就要第一时间追问,了解障碍产生的原因 ?要让用户自己确认任务是否完成,研究人员不能帮助用户下结论一个产品的用户流失调研中,它的样本取样可以包含哪些用户? ?产品的流失用户 ?产品的活跃用户 ?产品的潜在用户 ?产品的沉睡用户 关于问卷设计要注意的原则,下列哪些说法是错误的? ?选项之间要保持互斥 ?选项设计不必穷尽所有的可能性 ?问题顺序要先易后难 ?必要时个人信息(如年龄、性别、收入等)可以放在问卷开头询问 ?为了节约访问时间,可以将两个主题的题目合并成一个题目来问统计分析中的因子分析(Factors),如何确定因子的个数? ?根据研究假设 ?根据特征值 ?根据因子载荷的大小 ?根据碎石图 ?根据因子累积贡献率 ?样本折半因子对比 建构聚划算的人物角色(persona)时,以下哪些做法是正确的?

阿里巴巴笔试题(南京站,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这三面都至少出现一次。

阿里巴巴笔试题答案

第一题选C,不解释吧,按位与就行 第二题选D,不解释,2*3*sizeof(int*)=48(64位机器上是8字节一个指针) 第三题选C,我不确定,不过,应该是的 第四题选D,明显考的是补码 第5题选D,果断访问错误(这是Java的代码) 第6题选B,大家都懂 第7题果断A啊 第8题果断是B,不解释,大家懂 第9题是B,’0’不是’\0’,这个要注意 第10题果断是Fibonacci,显然是C,前几个是0,1,2,3,5,8,13,21 第11题选B,计算量是2^35,现在计算机的主频是2^30,所以差不多是几秒的事 第12题是B,显然有n=4N1+3N3+2N2+N1+1=N4+n3+n2+n1,所以N0=82,不解释 第13题果断是D,这个老题目了,不解释 第14题是C,二分查找嘛,大家都会,不解释 第15题是Fulkerson算法,算出来是46,每一次选一个增广路径即可,直接选不出来为止 第16题选185,显然,它给了120块钱(楼主二了)和一个物品(值65元),所以亏损185 这个题目楼主是这样想的,结果二了 第17题是2,不解释Fermart小定理,2^6 mod 7= 1,所以2^100=2^4=16=2 mod 7 第18题,我觉得是B,不知道对不对,这个不会 第19题,算得不太精细,选了A,不确定。 第20题C,概率与级数运算,不解释 第21题,果断B,D,malloc,new申请到的是Virtual Memory,不过,windows里面还真可以申请到物理内存,用的是VirtualAllocEx API即可

第22题B,C肯定对,D不确定,感觉是对的,不过,没敢选 第23题,其实就是解n^14<10^16,解出n<= 13,所以选14,15(我是推出n<10^(8/7)然后算出n<=13 第24题,D,因为选出第一个是白的,所以位于A的概率是2/3 第25,不可能,需要2.8*10^8 bit,而蓝牙只能传2.4*10^7bit所以一帧需要0.2S 第26题(mnlogn)不解释,归并而已 第27题显然是17分钟 第28,错两个地方1,没考虑只有一个数,2,可能死循环(给你数组0,2,3让查找1)楼主两个都想到了,写的时候忘记了写1,悲剧 第29题,果断SkipList,地球人懂的O(PLogpN)

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、下列结构中,______必须随机存取实现 栈 队列

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

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,最后从第一位读至最后一位,即为有序的集合。这种算法充分利用了题目中给的条件,但也仅仅适合本题目,(不会有重复的数字,同时不与其余的数进行关联)

阿里巴巴 2015校园招聘笔试试题——产品经理岗

2015年阿里巴巴校招产品经理笔试题目 【业务性产品经理(商业领域)笔试题】 (开放题,每人选做其中五道即可) 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,微信微博等,并分析其核心竞争 力你自己是否有产品的经历?如果有,需求是如何发现的?解决了什么问题?假如你是一个村支书,村里目前修路需要占用一部分土地,部门村民对被占用土地的赔偿金额感到不满,鼓动了一批民众到工地闹事,已经演变成聚众事件,你将如何解决?【 阿里巴巴校招运营专员笔试题】

阿里巴巴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:

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

1、有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页? A、7 B、8 C、9 D、10 2、设有一个顺序栈S,元素s1、s2、s 3、s 4、s 5、s6依次进栈,如果6个元素的出栈顺序为s2、s3、s4、s 6、s5、s1,则顺序栈的容量至少应为多少? A、2 B、3 C、4 D、5 3、下列关于文件索引结构的叙述中,哪一个是错误的? A、采用索引结构,逻辑上连续的文件存放在连续的物理块中 B、系统为每个文件建立一张索引表 C、索引结构的优点是访问速度快,文件长度可以动态变化 D、索引结构的缺点是存储开销大 4、【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】 5、某页式存储管理系统中,地址寄存器长度为24位,其中页号占14位,则主存的分块大小是()字节。 A、10 B、2^10 C、2^14 D、2^24 6、在一个长为33厘米的光滑凹轨上,在第3厘米、第6厘米、第19厘米、第22厘米、第26厘米处各有一个钢珠,凹轨很细,不能同时通过两个钢珠,开始时,钢珠运动方向是任意的。两个钢珠相撞后,以相同速度反向运动。假设所有钢珠初始速度为每秒运动1厘米,那么所有钢珠离开凹轨的最长可能时间是() A、30 B、26 C、38 D、33 7、std::vector::iterator重载了下面哪些运算符? A、++ B、>> C、*(前置) D、== 8、下列运算符,在C++语言中不能重载的是() A、* B、?: C、:: D、delete 9、在排序方法中,元素比较次数与元素的初始排列无关的是() A、Shell 排序 B、归并排序 C、直接插入排序 D、选择排序 10、给定如下代码:int x[4]={0}; int y[4]={1}; 数组x和y的值为() A、{0,0,0,0},{1,1,1,1} B、{0,0,0,0},{1,0,0,0}

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

阿里巴巴的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:日志的作用是什么

2014年阿里巴巴数据分析师笔试题

2014年3月29日阿里巴巴数据分析师(北京) 一、10道填空,每题3分 1、小松鼠采到了100颗坚果要运回家。家离放坚果的地方有100米远。小松鼠每次最多运50颗。BUT!小松鼠很馋。。。每走2米就要吃一颗坚果。。。问小松鼠最多能运回家多少颗坚果? A 0 B 10 C 25 D50 答案:应该是25颗吧!(先运50颗50米,吃了25颗,返回去,回去的途中没吃的了,再运50颗到50米的地方,又吃了25颗,再把剩下的运回家,又吃25颗,还剩25颗。)吐槽一下,题目应该说明:小松鼠足够聪明,至少比参加考试的人聪明。。。 2、标号12345的5个球,一次取两个,和为3或者6的概率是多少? 答案:0.3。不解释。 3、考了LOGISTIC回归。 4、聚类分析法,k_means。 5、其他条件相同,置信水平越低,则置信区间上下限差值越() A.越大 B.越小 C.为0 D不确定 应该是B吧。 6、precision、ecall、ROC。 剩下的不记得了。 二、三道题,每题10分。 1、已知每10万人中有1人得艾滋病。现在有一种检查,如果被测者患病则一定能查出来。如果被测者没病,有1%的测试出错也显示阳性。现在一个人检查结果是阳性。问真正得病的概率? 答案:貌似所有的讲全概率公式的书上都有这道题。 2、SQL 两张表合并,主键是USER_ID,然后把深圳市、广州市,大于16岁的,发生在2013年12月的一项挑出来加起来。不会SQL的话就写思路。我就不会。。。。。。 3、层次分析法AHP的含义,具体步骤。并举一个适合用层次分析法的案例。 三、两道题,每题20分。 1、淘宝上有一些小众但是品位高的店铺,怎么把他们筛选出来捏? 2、双十一的时候,商家会发优惠券,从商家和平台两个角度设计评价指标,并分析指标不同结果应该对应怎样的措施。 资料:优惠券分两种:满200减50,满300减100. 发放日期:10月15-11月10 使用日期:11月11 希望对大家有所帮助!

阿里巴巴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 的。【定义在类声明之中的成员函数将

2015阿里c研发工程师在线笔试题

1, 抽屉里有100个红球、100个蓝球、100个黄球、100个橙球,现在每个人过来随机抽一个球,最多___77_个人抽完之后,能保证一定集齐20个相同颜色的球。(最坏情况) 37 45 77 50 48 21 2, 如下SQL语句中,____可能返回null值。 (1) select count(*) from t1; (2) select max(col1) from t1; (3) select concat('max=',max(col1)) from t1; (1)可能,(2)和(3)不可能 (2)可能,(1)和(3)不可能 (3)不可能,(1)和(2)可能 (1)不可能,(2)和(3)可能 都不可能 都可能 3, 小赵和小钱二人分别从寝室和图书馆同时出发,相向而行。过了一段时间后二人在中途相遇,小赵继续向图书馆前进,此时:若小钱继续向寝室前进,则当小赵到达图书馆时,小钱离寝室还有600米;若小钱立即折返向图书馆前进,则当小赵到达图书馆是,小钱离图书馆还有150米。那么图书馆与寝室间的距离是____。 1300m 1250m 800m 1050m 1100m 900m 4, 将整数序列(7-2-4-6-3-1-5)按所示顺序构建一棵二叉排序树a(亦称二叉搜索树),之后将整数8按照二叉排序树规则插入树a中,请问插入之后的树a 中序遍历结果是____。 1-2-3-4-5-6-7-8 7-2-1-4-3-6-5-8 1-3-5-2-4-6-7-8 1-3-5-6-4-2-8-7 7-2-8-1-4-3-6-5 5-6-3-4-1-2-7-8 5, 设int a=1,x=2; 执行语句a=x>1?5*x:(x=7); 后,变量a和x的值分别是____。 a=1 x=2 a=1 x=10 a=5 x=7 a=10 x=2 a=10 x=10 a=2 x=10

阿里巴巴集团笔试题目

阿里巴巴集团笔试题目 下面是由应届毕业生网分享的题目 第一题、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 }.

相关文档
相关文档 最新文档