移動終端開發的筆試題:
一.簡答題
1.用線性表,二叉平衡樹,雜湊表儲存資料,比較各個的優劣。
2.給定乙個十進位制數,轉換成n進製。
3.給乙個程式**進行分析。主要是記憶體管理方面的。有4個小題目,如下:
(1)c程式將記憶體分為哪幾類(答案在《程式設計師面試寶典》第175頁)
(2)結合題目中給出程式**,分析一些變數是屬於(1)類中的哪一類。(答案《程式設計師面試寶典》第175頁下面的例項)
(3)分析題目中程式**關於記憶體分配的語句。記憶體分配失敗後,結果是什麼?
(4)delete與 free的異同。判斷題目**中使用是否正確。(答案《程式設計師面試寶典》第81頁)
二,系統設計
對於乙個遞增陣列,我們可以採用二分查詢法判斷陣列是否存在數x。但現在有一不太規則的陣列a』,但它又具備一定的規則性:在某一範圍是遞增,如陣列序列:,在前4項是遞增的,第5項到第9項也是…在這樣的陣列中,如何查詢數x是否存在了。請詳細給出你的演算法。並分析演算法的時間複雜度和空間複雜度。
研發測試筆試題:
一、簡答
1 linux/unix遠端登陸都用到了ssh服務,當網路出現錯誤時服務會中斷,linux/unix端的程式會停止。為什麼會這樣?說下ssh的原理,解釋中斷的原理。
2乙個最小堆,也是完全二叉樹,用按層遍歷陣列表示。
(1). 求節點a[n]的子節點的訪問方式
(2). 插入一節點的程式void add_element(int *a,int size,int val);
(3). 刪除最小節點的程式。
3 關於hash,有表a,用100%表示,它的粒子度是0.1%,同樣的表b,兩張表組成一層。要將a均勻對映到b,b的每10%裡面有1%對應該於a的10%。另一問,如果有超過十層以上,要實現它們之間的這種對映,hash函式應該怎麼實現。
二、演算法
1有乙個數,比如n=123,一共有三位,所有位的值加起來是6。我們找出另外乙個數141,也是三位,所有位加起來也是6,這樣和123有同樣關係的數還有很多,我們將求乙個有這種關係並且是所有數中只比基123剛剛好大的數定義為f(n)。如果不存在,則f(n)=-1.現在有乙個數n,它的位數小於1000.它的值小於10^500.求f(f(n))=-1。不記得問什麼了?是問迭代過程怎麼實現還是問什麼時候停止的。反正是乙個迭代
2 求乙個全排列函式:
如p([1,2,3])輸出:
[123],[132],[213],[231],[321],[323].
求乙個組合函式
如p([1,2,3])輸出:
[1],[2],[3],[1,2],[2,3],[1,3],[1,2,3]
這兩問可以用偽**。
三、設計
有兩個十億資料的表,表是xxid,xx,xx,xx之類的幾個項,存的是url之類的,只說是存到硬碟的,中間沒說記憶體限制什麼的。
其中有一問是實現資料查詢中的and ,or ,sub(與集, 交集,差集) 。其中要實現and(sub())之類的功能。
還有並行實現…不記得了。
另外一問是當查詢(比如and執行)出前100位時,怎麼讓它停下來,不要再查詢了。怎麼實現這種高效查詢前100位的執行。
百度筆試題
一 選擇題 15分 共10題 1.在排序方法中,關鍵碼比較次數與記錄地初始排列無關的是 a.shell排序 b.歸併排序 c.直接插入排序 d.選擇排序 2.以下多執行緒對int型變數x的操作,哪幾個需要進行同步 a.x y b.x c.x d.x 1 3.void func 中,變數val的記憶體...
百度筆試題
一 選擇題 15分 共10題 1.已知乙個線性表 38,25,74,63,52,48 採用的雜湊函式為hash key key mod 7,將元素雜湊到表長為7的雜湊表中儲存。請選擇後面兩種衝突解決方法分別應用在該雜湊表上進行等概率成功查詢的平均查詢長度,拉鍊法 線性探測法 a.1.0 b.1.5 ...
百度筆試題
1 完成函式 size t foo unsigned int a1,size t al1,unsigned int a2,size t al2 其中a1和a2都為無符號陣列,al1和al2為陣列的長度,陣列的長度為偶數。無符號陣列由一對數字區間組成。如下例 a1 為 0,1,3,6,10,20 a2...