騰訊2016春季校招筆試題

學識都 人氣:1.51W

2016年騰訊春季校招就要開始了,爲了讓考生更好的備考,以下是小編整理的2016年騰訊春季校招筆試題,供大家參考練習。

騰訊2016春季校招筆試題

  騰訊2016春季校招筆試題1

1. 已知一棵二叉樹,如果先序遍歷的節點順序是:ADCEFGHB,中序遍歷是:CDFEGHAB,則後序遍歷結果爲:()

A. CFHGEBD

B. CDFEGHBA

C. FGHCDEBA

D. CFHGEDBA

2. 初始序列爲1 8 6 2 5 4 7 3一組數採用堆排序,當建堆(小根堆)完畢時,堆所對應的二叉樹中序遍歷序列爲:()

A. 8 3 2 5 1 6 4 7

B. 3 2 8 5 1 4 6 7

C. 3 8 2 5 1 6 7 4

D. 8 2 3 5 1 4 7 6

3. 當n=5時,下列函數的返回值是:()

int foo(int n)

{

if(n<2)returnn;

returnfoo(n-1)+foo(n-2);

}

A. 5

B. 7

C. 8

D. 10

4. S市A,B共有兩個區,人口比例爲3:5,據歷史統計A的犯罪率爲0.01%,B區爲0.015%,現有一起新案件發生在S市,那麼案件發生在A區的可能性有多大?( )

A. 37.5%

B. 32.5%

C. 28.6%

D. 26.1%

5. 靜態變量通常存儲在進程哪個區?()

A. 棧區

B. 堆區

C. 全局區

D. 代碼區

6. 查詢性能()

A. 在Name字段上添加主鍵

B. 在Name字段上添加索引

C. 在Age字段上添加主鍵

D. 在Age字段上添加索引

7. IP地址是一個( )類IP地址。

A. A

B. B

C. C

D. D

8. 下推自動識別機的語言是:()

A. 0型語言

B. 1型語言

C. 2型語言

D. 3型語言

9. 下列程序的輸出是:()

#define add(a+b) a+b

int main()

{

printf(“%d”,5*add(3+4));

return 0;

}

A. 23

B. 35

C. 16

D. 19

10. 瀏覽器訪問某頁面,HTTP協議返回狀態碼爲403時表示:()

A. 找不到該頁面

B. 禁止訪問

C. 內部服務器訪問

D. 服務器繁忙

11. 如果某系統15*4=112成立,則系統採用的是()進制。

A. 6

B. 7

C. 8

D. 9

12. 某段文本中各個字母出現的頻率分別是{a:4,b:3,o:12,h:7,i:10},

使用哈夫曼編碼,則哪種是可能的編碼:()

A. a(000) b(001) h(01) i(10) o(11)

B. a(0000) b(0001) h(001) o(01) i(1)

C. a(000) b(001) h(01) i(10) o(00)

D. a(0000) b(0001) h(001) o(000) i(1)

13. 對於派生類的構造函數,在定義對象時構造函數的執行順序爲?()

1:成員對象的構造函數

2:基類的構造函數

3:派生類本身的構造函數

A. 123

B. 231

C. 321

D. 213

14. 如何減少換頁錯誤?()

A. 進程傾向於佔用CPU

B. 訪問局部性(locality of reference)滿足進程要求

C. 進程傾向於佔用I/O

D. 使用基於最短剩餘時間(shortest remaining time)的調度機制

15. 遞歸函數最終會結束,那麼這個函數一定?()

A. 進程傾向於佔用CPU

B. 有一個分支不調用自身

C. 使用了全局變量或者使用了一個或多個參數

D. 沒有循環調用

16. 編譯過程中,語法分析器的任務是()

A. 分析單詞是怎樣構成的

B. 分析單詞串是如何構成語言和說明的

C. 分析語句和說明是如何構成程序的

D. 分析程序的結構

17. 進程進入等待狀態有哪幾種方式?()

A. CPU調度給優先級更高的線程

B. 阻塞的線程獲得資源或者信號

C. 在時間片輪轉的情況下,如果時間片到了

D. 獲得spinlock未果

單選題答案:D A A C C

B B C D B

A A D D D

B D

  騰訊2016春季校招筆試題2

①、數據結構

輸入序列ABCABC經過棧操作變成ABCCBA,下面哪些是可能的棧操作()

A: push pop push pop push pop pushpush push pop pop pop

B: push push push push push push poppop pop pop pop pop

C: push push push pop pop pop pushpush pop pop push pop

D: push push push push pop pushpop push pop pop pop pop

答案:AD

解析:棧(Stack)是一個基礎的數據結構,它的特點是先進後出,或者是後進先出(Last in first out, LIFO),可以用於逆序輸出。裝子彈的梭子和疊在一起的盤子等都是棧結構在實際中的應用。對棧中數據的'操作是在棧頂進行的,進棧push操作和出棧pop操作是兩個基本的操作。A選項中第一組pushpop操作push A pop A 輸出 A,第二組pushpop操作push B pop B 輸出 B,第三組pushpop操作push C pop C 輸出 C,接着三個push操作,依次把ABC壓棧,三個pop操作反向輸出爲CBA,滿足題目要求。類似的可以求出,選項B的結果爲CBACBA,選項C的結果爲CBABAC,選項D的結果爲ABCCBA。

②、數據結構

下列關鍵碼序列哪些是一個堆( )

A:90 31 53 23 16 48

B:90 48 31 53 16 23

C:16 53 23 90 3148

D:1631 23 90 53 48

答案:AD

解析:與棧一樣,堆也是一個基礎的數據結構,分爲最大堆和最小堆兩類。最大堆中根節點的值是整個堆中最大的,該屬性對於堆的分支也是成立的。最小堆中根節點的值是整個堆中最小的,該屬性對於堆的分支也是成立的。需要注意的是:堆首先是一個完全二叉樹,是二叉樹的推廣。堆的建立複雜度是O(n),插入和刪除都可以在O(logn)時間內完成。堆可以用於構造優先隊列,在操作系統中有着重要應用。依據堆是一個完全二叉樹的性質,選項A可以構成成一個最大堆,31和53分別是根節點90的左右孩子,23和16分別是節點31的左右孩子,48是節點53的左孩子。依次類推,選項D是一個最小堆,選項B和選項C不滿足堆的假設條件。

③、算法

二叉樹的後序排列DBEFCA,中序排列DBAECF,那麼對其做先序線索化二叉樹,節點E的線索化指向節點()

A:BC

B:AC

C:DF

D:CF

答案:D

解析: 先序 (根-左子樹-右子樹)、中序 (左子樹-根-右子樹)和後序 (左子樹-右子樹-根)遍歷是遍歷二叉樹的三種基本方式。先序遍歷的第一個值就是根節點,後序遍歷的最後一個節點就是根節點。由先序和中序遍歷可以唯一確定一個二叉樹,同樣的,由後序和中序遍歷也可以唯一確定一個二叉樹。需要注意的是:由先序和後序遍歷不能唯一確定一個二叉樹。由題目給定的後序和中序遍歷結果,可以確定二叉樹的根爲 A,A的左孩子爲B,A的右孩子爲C。B的左孩子爲D。C的左孩子爲E,C的右孩子爲F。因此,該樹先序遍歷的結果爲ABDCEF。線索化指的是在遍歷的過程中,使用線索來代替空指針(比如葉子節點的左右孩子都是空指針)。線索二叉樹可以用於更快的線性遍歷二叉樹。線索化時,E的前驅是C,後繼是F,因此,選項D正確。

更多精彩筆試題(含答案、解析),敬請期待即將上線的七月題庫APP。