阿里巴巴面试题
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、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 C、2^14 D、2^24
10、在一个长为33厘米的光滑凹轨上,在第3厘米、第6厘米、第19厘米、第22 厘米、第26厘米处各有一个钢珠,凹轨很细,不能同时通过两个钢珠,开始时,钢珠运动方向是任意的。两个钢珠相撞后,以相同速度反向运动。假设所有钢珠初 始速度为每秒运动1厘米,那么所有钢珠离开凹轨的最长可能时间是()
A、30 B、26 C、38 D、33
解:A 碰 B 后, A, B 各自反方向运动, 由于速度与之前一样, 所以: 将 A B 交换后,结果与之前相同。 所以,整个过程就相当于,每个球单向运动
11、std::vector::iterator重载了下面哪些运算符?
A、++ B、>> C、*(前置) D、==