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