首页 > 代码库 > 阿里巴巴实习生笔试题(含答案)
阿里巴巴实习生笔试题(含答案)
1、动态链接库的优点?
答:共享、开发速度快,减少页面交换。拓展一下,静态链接库的优点:(1) 代码装载速度快,执行速度略比动态链接库快; (2) 只需保证在开发者的计算机中有正确的.LIB文件,在以二进制形式发布程序时不需考虑在用户的计算机上.LIB文件是否存在及版本问题,可避免DLL地域等问题。
2.、n个数值选出最大m个数(3<m<n)的最小算法复杂度是
答:O(n)
3、由权值分别为1、12、13、4、8的叶子节点生成一颗哈夫曼树,它的带权路径长度为()
答:81。
4、阿里巴巴国际站的股票代码是1688,这个数字具有这样的特性,首先是个首位为1的4位数,其次恰巧有且仅有1个数字出现了两次。类似的数字还有:1861,1668等。这样的数字一共有()个。
答:分两种情况,重复数字是1和重复数字不是1.用排列组合的方法来计算比较快。
答:通道方式>DMA方式>中断控制方式>程序直接访问方式(循环检测IO方式)
7、下列不是进程间的通信方式的是()
答:1 4答:回调(这属于一种编程机制)8、已知IBM的PowerPC是big-endian字节序列而Intel的X86是little-endian字节序,如果在地址啊存储的整形值时0x04030201,那么地址为a+3的字节内存储的值在PowerPC和Intel X86结构下的值分别是?
答:DCAB,没什么难度,这道题
12、
#pragma pack(2) class BU { int number; union UBffer { char buffer[13]; int number; }ubuf; void foo(){} typedef char*(*f)(void*); enum{hdd,ssd,blueray}disk; }bu;
sizeof(bu)的值是()
答:4+14 +0 +0 +4 = 22;union的大小取决于它所有的成员中,占用空间最大的一个成员的大小,并且需要内存对齐,这里因为#pragma pack(2),所以union的大小为14,如果不写#pragma pack(2),那么union大小为16【因为与sizeof(int)=4对齐】;此外,这里还有一个坑人的地方,enum这里有变量,就是disk,这里比较坑人,申明和定义写在一起,很容易吧disk看成是enum的命名。
13、同一个进程中的线程不共享的部分是()
答:栈空间;
14、下面关于系统调用的描述中
答:调用程序是运行在用户态,而被调用的程序是运行在系统态。
15、在动态分区分配方案中,系统回收主存,合并空闲空间时需修改空闲区表,以下哪种情况空闲区会减1?
答:有上邻空闲区,也有下邻空闲区
17、刚毕业的小王上班有两路公交车都可以从家到公司.如果只等A车,平均需要5分钟才等到;如果只等B车,平均需要7分钟才能等到.假定两辆车运行时间独立,那么小王平均需要等多长时间才能等到A车或B车?
答:2分55秒。在时间t内,A车t/5趟, B车t/7趟,所以在t内等到车共计t/5+t/7趟,等到一趟的时间则为t/(t/5+t/7),等价35/12,
18、一个黑色袋子中装有5个红球,5个蓝球,5个黄球,从中抽取三次,每次抽一个球,取完不放回,则每种颜色球各得一个的概率是()
答:25/91。
最开始是0个球,第一次不管怎么选都会选一个和以前不同颜色的球,所以第一次选择颜色不同的球概率为1;
第一次选择之后,还剩14个球,其中 被第一次选走的那个颜色只有4个,剩下的两种颜色的球个数不变,都为5,
然后选一个与第一次颜色不同的球的概率是:10/14, 这是第二次选择
第二次选择之后,还剩13个球,其中被第一次和第二次选中的球,各有4个,剩下的没选到颜色的球还是5个,这次选中
还没选到的这个颜色的球的概率是:5/13
所以选择三个不同颜色总的概率为:1*(10/14)*(5/13) = 25/91.
19、
#include<iostream> #include<stdio.h> using namespace std; int main() { int* pint = 0; pint += 6; cout << pint << endl; printf("%d\n", pint); return 0; }
以上程序的运行结果是:24
不懂的可以加我的QQ群:261035036(IT程序员面试宝典
群) 欢迎你的到来哦,看了博文给点脚印呗,谢谢啦~~
阿里巴巴实习生笔试题(含答案)