百度面試題

2021-09-30 15:27:45 字數 3655 閱讀 6790

一、 

程式設計題 

1) 請用你熟悉的語言,寫乙個函式,給出乙個數的原碼,能得到該數的補碼。 

二、技能題(請在資料庫題和運用題目中任選一題完成)

1、資料庫 

1) 請說明關於資料庫的效能優化,請問可以從那些方面著手. 

調整資料結構的設計

2、調整應用程式結構設計

3、調整資料庫sql語句

4、調整伺服器記憶體分配

。記憶體分配是在資訊系統執行過程中優化配置的,資料庫管理員可以根據資料庫執行狀況調整資料庫系統全域性區(sga區)的資料緩衝區、日誌緩衝區和共享池的大小;還可以調整程式全域性區(pga區)的大小。需要注意的是,sga區不是越大越好,sga區過大會占用作業系統使用的記憶體而引起虛擬記憶體的頁面交換,這樣反而會降低系統。 

2) 請問delete from table a 與 truncate table table a的區別 

如果有rollback語句,delete操作將被撤銷,但truncate不會撤銷

truncate table 在功能上與不帶 where 子句的 delete 語句相同:二者均刪除表中的全部行。但 truncate table 比 delete 速度快,且使用的系統和事務日誌資源少。

2、運用題 

1) 請編寫指令碼實現將1,3,5。。到10000的奇數,寫到乙個新檔案中,每個數一行。

#!/bin/bash

for (( i=1;i<10001;i++ ))

donumber=$(($i%2))

if [ $number -eq 1 ]

then

echo $i >> newfile

fidone

2)請結合實際運用,說明如何徹底的查詢出目前你使用的wiondows系統中,開機後會啟動的所有程式。 

三、測試題 

2、關於b/s結構的乙個學生成績查詢系統(通過學號查詢成績),某測試人員設計了如下用例作為該系統測試的所有用例,請進行評價,並做相應補充。 

1)輸入正確的學號,能夠得到正確的成績結果。 

2)輸入異常學號,系統正常處理,顯示查詢結果為0。 

3)加大資料庫負載,檢視響應速度。 

4)檢視介面在各種解析度下是否正常顯示。

1.(5分)下面這段**是把中英文混合字串(漢字用兩個位元組表示,特點是第乙個位元組的最高位為1)中的大寫字母轉化為小寫字母,請找出其中的bug,注意各種異常情況。 for (char *piterator = szword; *piterator != 0; piterator )  else if (*piterator >= 'a' && *piterator <= 'z') *piterator = 32; } 2.(5分)對給定的上億條無序的url,請按照domain、site以及path分別排序,並請指出排序過程中可能會遇到的哪些問題?如何提高效率?例如:以及path的定義分別如下: domain:baidu.com site:www.baidu.com path: www.baidu.com/path 3.(10分)某型cpu的一級資料快取大小為16k位元組,cache塊大小為64位元組;二級快取大小為256k位元組,cache塊大小為4k位元組,採用二路組相聯。經測試,下面兩段**執行時效率差別很大,請分析哪段**更好,以及可能的原因。為了進一步提高效率,你還可以採取什麼辦法? a段** int matrix[1023][15]; const char *str = "this is a str"; int i, j, tmp, sum = 0; tmp = strlen(str); for(i = 0; i < 1023; i )  } b段** int matrix[1025][17]; const char *str = "this is a str"; int i, j, sum = 0; for(i = 0; i < 17; i )  } 

1)此題10分 

對任意輸入的正整數n,編寫c程式求n!的尾部連續0的個數,並指出計算複雜度。如:18!=6402373705728000,尾部連續0的個數是3。 

(不用考慮數值超出計算機整數界限的問題) 

2)此題10分 

編寫乙個c語言函式,要求輸入乙個url,輸出該url是首頁、目錄頁或者其他url 

如下形式叫做首頁: 

militia.info/ 

www.apcnc.com.cn/ 

www.800cool.net/ 

如下形式叫做目錄頁: 

請注意: 

a) url有可能帶http頭也有可能不帶 

b)動態url(即含有"?"的url)的一律不算目錄頁,如: 

www.buddhismcity.net/utility/mailit.php?l=/activity/details/3135/ 

www.buddhismcity.net/utility/mailit.php?l=/activity/details/2449/ 

另:如果你會linux,請用linux下的grep命令實現第2題的功能(附加5分)。 

3)此題40分 

如果必須從網頁中區分出一部分"重要網頁"(例如在10億中選8億),比其他網頁更值得展現給使用者,請提出一種方案。 

4)此題40分 

假設有10億網頁已經被我們存下來,並提供如下資訊:網頁全文(即網頁的原始碼)、全文長度、網頁正文(即網頁中提取的主體文字)、 

正文長度,以及其他網頁提取物等,現在希望去掉其中的重複網頁,請提出可行的方案,計算出每個網頁對應的重複度,你可以自己 

對網頁重複下定義,也可以提出需要哪些更多的網頁提取物來實現更好的去重複方案 

面試:1 

寫出strncpy

的函式、與

strcpy區別

2有乙個陣列,已知乙個數出現的次數超過了一半,用

o(n)

時間複雜度、

o(1)

空間複雜度的演算法找出這個數

3 m個人圍成一圈,按

1234..n(n<=m)

次序迴圈報數,報到

n的離開

,最後乙個離開的是原先的第幾個人

? 時間複雜度

o(n) 4

以下**有什麼問題

5程序通訊方式及區別

6 客戶端和伺服器間通訊過程

還有專案、實習經驗之類的

目前收集到的一些比較有意思點的題目。

1、一火車以20km/h向前開,另一架火車以10km/h以相反方向開,兩車相距300km。乙隻小鳥則以30km/h的速度在兩車直接往返,問兩車相距時,小鳥飛了多少km。(忽略加減速時間)

2、前面有條分岔路,各站著乙個國家的人,乙個是謊話國的,乙個是誠實國的。你只能問一次,要怎樣問才能知道這兩個國家分別怎麼去。

3、一架飛機加滿油可以飛行地球半圈,問要多少架飛機同時飛才能飛完整個地球。

4、工人每天工資為1/7金條,工資必須每天都付給他。現在你有一根金條,你只能切兩刀,問怎樣切你才能保證每天都有金條給工人。

5、四個人的過橋時間分別為1、2、5、10分鐘,橋只能同時過兩個人,速度以最慢的那個人來計算。由於是晚上必須有一人帶電筒,問怎樣過只用17分鐘。

6、給定乙個隨機7個數的函式rand7(),可以隨機1-7,問怎樣才能用rand7()實現隨機10個數(1-10)rand10()。 s

百度面試題

有一根27厘公尺的細木桿,在第3厘公尺 7厘公尺 11厘公尺 17厘公尺 23厘公尺這五個位置上各有乙隻螞蟻。木桿很細,不能同時通過乙隻螞蟻。開始時,螞蟻的頭朝左還是朝右是任意的,它們只會朝前走或調頭,但不會後退。當任意兩隻螞蟻碰頭時,兩隻螞蟻會同時調頭朝反方向走。假設螞蟻們每秒鐘可以走一厘公尺的距...

百度面試題

一 選擇題 15分 共10題 1.任何乙個基於 比較 的內部排序的演算法,若對6個元素進行排序,則在最壞情況下所需的比較次數至少為 a 10 b 11 c 21 d 36 2.關係模型有三類完整性約束,定義外來鍵實現的是 完整性.a.實體完整性 b.參照完整性 c.使用者定義的完整性 d.實體完整性...

百度面試題

1.乙個int陣列,裡面資料無任何限制,要求求出所有這樣的數a i 其左邊的數都小於等於它,右邊的數都大於等於它。能否只用乙個額外陣列和少量其它空間實現。2.乙個檔案,內含一千萬行字串,每個字串在1k以內,要求找出所有相反的串對,如abc和cba。當時怎麼想的忘記了,現在重新思考一下,檔案的大小上限...