job

来源:互联网 发布:共享栈算法 编辑:程序博客网 时间:2024/04/30 04:46

2011阿里巴巴集团实习生招聘笔试题 C&C++

http://blog.csdn.net/wangran51/article/details/8876234


1. 若一棵二叉树具有10个度为2的结点,则该二叉树的度为0的结点个数是(      ) 

A:9     B:11     C:12     D:不确定   

 可以这样想, 当只有一个节点时,度为0的点个数是1,增加一个度为2的节点,也就是一个叶子节点, 那么有2两个度为零的结点.


2.下列排序算法中,其时间复杂度和记录的初始排列无关的是(    B  )

A:插入排序     B:堆排序     C:快速排序    D:冒泡排序   



3.已知中序遍历的序列为abcdef,高度最小的可能的二叉树的叶子是(  ABC  )

 A:ace       B:acf        C:adf        D:cdf   



4.参加百年阿里培训的n位同学结伴去西湖旁边为游人指路,两人一组,他们打算先让体重之和恰好为102公斤的同学一组,请给出一个算法找到这样的组合,或者确定他们中不存在这样的组合,其中最优的算法时间复杂度为?(假设体重均为整数) (   C )

A:O(log(n))     B:O(n)      C:O(n log(n))    D:O(n^2) 

估计又是堆


5.众所周知数据结构中非常基本的树结构包括二叉查找树(BST)。当我们把如下序列:10,5,19,4,13,7,6,3,1按顺序建立一棵BST时,树的最大深度是?(令根节点深度为0,执行不进行平衡的基本插入) (     )

 A:5     B:4    C:3     D:2   


6.阿里巴巴启用了新的办公大厦,这里的一切都充满了现代感;工程师们打算在娱乐区用大小相等的圆形材料分割出一些空间,使用A,B,C三个圆形材料,最多可以将空间分为八个区域(包括圆形以外的区域),如果给你五个圆形材料,你最多可以帮助工程师们分出多少个空间? (     )