阿里巴巴校招笔试题含答案、解析

时间:2020-10-31 14:00:53 笔试题目 我要投稿

阿里巴巴2015校招笔试题(含答案、解析)

  ①、逻辑

阿里巴巴2015校招笔试题(含答案、解析)

  下列描述中唯一错误的是( )

  下面选项内容中的A,B,C,D,E,F都是表示某个选项

  A:本题有五个选项是正确的

  B:B正确

  C:D正确

  D:DEF都正确

  E:ABC中有一个错误

  F:如果ABCDE都正确,那么F也正确

  答案:B

  解析:首先理解题意:本题的条件和结论是互为因果的。破解这种循环论证题目的方法就是选择某一个选项,假定它对或者错,然后推理。并且,这里的“某一个选项”常常可以根据题目找到推理链条中的薄弱环节。如本题的题干说“描述中唯一错误”,而一共有A到F6个选项,马上得知“6个选项中有5个是对的,1个是错的”,这即表明“A:本题有五个选项是正确的”是对的。而“C:D正确”“D:DEF都正确”都涉及了D,不妨假定“C:D正确”是错的.,从而完成推理。B错误,其余都正确

  ②、算法

  个数约为50K的数列需要进行从小到大排序,数列特征是基本逆序(多数数字从大到小,个别乱序),以下哪种排序算法在事先不了解数列特征的情况下性能最优(不考虑空间限制)。( )

  A:冒泡排序

  B:改进冒泡排序

  C:选择排序

  D:快速排序

  E:堆排序

  F:插入排序

  答案:E

  解析:冒泡排序、选择排序、插入排序的基本时间复杂度为O(N^2)。如果数列基本升(降)序,而题目要求升(降)序排列,则改进的冒泡排序可以近似为O(N)。基本有序的数列,常规的快速排序时间复杂度退化成O(N^2),而堆排序无论任何情况下的时间复杂度都是O(NlogN),因此,堆排序是最优的。

  ③、系统设计

  下列方法中,( )不可以用来程序调优?

  A:改善数据访问方式以提升缓存命中率

  B:使用多线程的方式提高I/O密集型操作的效率

  C:利用数据库连接池替代直接的数据库访问

  D:使用迭代替代递归

  E:合并多个远程调用批量发送

  F:共享冗余数据提高访问效率

  答案:B

  解析:A、C、F都是从优化内存方面来进行程序调优;E可以提高CPU的访问效率;普通的递归往往时间复杂度较高,使用迭代后能够明显改善(另外一种调优方式可以考虑带缓存的递归);而B中,多线程可以提高CPU的利用效率,但对于I/O密集型,瓶颈在于数据的获取,所以B不正确。

【阿里巴巴2015校招笔试题(含答案、解析)】相关文章:

阿里巴巴2016校招笔试题11-02

网易2015校招笔试题11-01

2015阿里校招运营专员笔试题08-21

京东2015应届生校招笔试题11-02

阿里巴巴视觉设计师的校招面试笔试题11-18

2015阿里校招研发工程师笔试题08-13

腾讯校招笔试题01-16

2015百度校招产品经理笔试题目08-19

2015年百度校招产品经理笔试题07-26