天天看點

2014年3月騰訊廣研班筆試經驗

印象中這樣,給師弟師妹們一個複習方向。

選擇題:

1 導緻資料庫資料不一緻的根本原因原因

2 window 系統預設分給線程的棧大小是?

3 SQL語句 select where fom order by  group  by  having 執行順序

4 unix 目錄結構

5 深度優先周遊一棵樹

6 動态編譯和靜态編譯

7選一個穩定的排序

8 數組的排列順序對哪種排序算法無影響

9 路由器工作在第幾層?

10 3個程序,每個程式花費80%的時間進行I/O,20%的時間使用CPU,,多程序的環境下,系統總響應時間?  

程式編号 啟動時間 需要的CPU時間
1 00 3.5
2 10 2
3 15 1.5

11 什麼是Thrashing 

12 SQL删除table的語句

13  考到了宏

14TCP的特點

填空題:

1 二分搜代碼填空;

2 int數組A[0] A[1].....A[n],求子數組和的最大值

3 二叉樹的前序周遊

4遞歸

5 sql語句填空  

6 遞歸 ask(3,3)什麼的,挺複雜的一個遞歸,沒懂。

7 存1,2,3,4,....n的 棧,随機彈出 。n=2的時候,随時彈出的可能性是 1,2  和2,1。當n=5時,随機彈出的可能性 多少種

8 猜數字

 A 給出(1,100)的一個數,B猜,當猜的數偏小,A會提示偏小。 一旦B偏大就不給提示,即使以後猜的數偏小也不給提示,隻告訴對或者錯。

求至少多少次可以保證猜到數?這種政策,第一次猜的數是?

解答如下:

假設你猜的第一個數字是x。

那麼最少次數最小也要為x,因為第一次如果猜的大了,會提示你猜的大了,你可以确定正确數字的範圍是[1,x-1],是以,你最壞需要再猜x-1次,總共也就是x次。如果你第一次猜小了,會提示你猜的小了,你可以确定正确數字的範圍是[x+1,100],接下來,你需要猜第二次,同樣面臨的是猜大還是猜小,猜第二次的時候,你所要關心的問題應該是如果猜的大了,在最壞的情況下,要猜對所需要的次數應該小于等于x-1。正因為如此,你第二次所要猜的數字,最大應該為x+(x-1)。如果猜的比2x-1小的話,可以保證第二次猜的次數小于等于x-1,但從總體考慮,如果第二次猜的數字小于2x-1的話,會增加後面猜的次數。為了最後結果的最優,是以第二次應該猜的數字為2x-1。以此類推,步長每次都比上一次少一次。

下面就是解x的值。猜的次數肯定不能為負數。是以

1+2+3+4+5+……+x=x(x+1)/2>100

最小次數就是上面不等式解的最小正整數,結果為14次,第一次猜14

代碼題:

字元串轉換為整形A (1),B (2),..Z(26),AA(27).....

  int  charToInt(const char*)

最後一道題:根據方向不同選擇不同題

用戶端前台開發:

 給一個1G的文本内容實作翻轉,如abc變為cba 。系統經常會出現挂起無響應,請解釋原因,并給出解決方案和僞代碼。

繼續閱讀