2014年百度質量保證部的面試題

一面主要是針對項目來的,涉及裏面的一些技術,一般是你用到啥(在面試裏你說到啥),他就問啥。

但是某些方面的問題是不可避免的(一二面中均出現的)。

1.c++方向

1.1.虛函數

爲什麼要引入虛函數(虛函數的作用):實現多態 注:指向基類的指針在操作它的多態對象時,會依據對象的不同,調用相應的函數

防止多重繼承 純虛函數(怎麼聲明:=0)

1.2.struct和class的區別

1)字面上的區別(從定義角度) 2)成員權限上的區別 3)默認繼承方式 4)class可用來定義模板參數 注意:c++中的struct中可以寫方法,也可以繼承

2.網絡方向

2.1. tcp/udp

建立連接時三次握手:

斷開連接時四次握手:(注意二三次都是sever端發送的:第一次ACK是確認收到,第二次FIN表示可以關閉了,中間的那段時間可能server端還有未傳完的數據)


另外:tcp 與 udp 的區別

  tcp udp
是否連接 面向連接 面向非連接
是否可靠 可靠的 不可靠的
場合 傳輸大量數據 少量數據
速度

我還被問到:怎麼用udp實現tcp 封裝一下udp? 或者從區別上考慮?

2.2.cookie和session

二者實現方式 應用情形

3.進程線程

3.1.基本概念

關於這個,面試觀一般會問你瞭解線程及進程的哪些內容,讓你自己講講

3.2多線程同步方式及其區別

1)事件:用來通知線程有一些時間已經發生,從而啓動後繼任務
2)臨界區:最直接的方式,一次只能一個執行
3)互斥器:非常類似於2)。但:1.互斥可用於跨進程的線程同步;2互斥可被賦予一個字符串名字,並通過引用此名字創建現有互斥對象的附加句柄
4)信號量:建立在互斥之上,增加資源計數功能,預訂數目的線程允許同時進入同步代碼

3.3.Linux下進程間通信方式及其優缺點

1)管道及有名管道
管道科用於具有親緣關係進程之間的通信
有名管道克服了管道沒有名字的限制,還允許無親緣關係進程通信
2)信號
信號是比較複雜通信方式,用通知接收進程有某種事件發生,除了用於進程間通信外進程還可以送信號給進程本身;
Linux除了支持Unix早期信號詫義凼數sigal外,還支持語義符合Posix.1標準信號函數signal函數
(實際上,該凼數是基二BSD的,BSD爲了實現可靠信號機制,又能夠統一對外接口,用sigaction數重新實現了signal數)

3)報文隊列(消息隊列)

消息隊列 是消息的鏈接表,包括:Posix消息隊列、systemV消息隊列。

有足夠權限的進程可以向隊列中添加消息,被賦予讀權限的進程則可以讀走隊列中的消息

消息克服了信號承載信息量少,管道只能承載無格式字節流及緩衝區大小受限等缺點

4)共享內存

使得多個進程可以訪問同一塊內存空間,是最快的可用ipc形式。

是針對其他通信機制運行效率低而設計的。

往往與其他通信機制,如信號量結合使用,來達到進程間的同步和互斥

5)信號量

主要是作爲進程間以及同一進程不同線程之間的同步手段

6)套接口

更爲一般的進程間通信機制,可用於不同機器之間的進程間通信。

4.算法及設計

這是整個面試中比較難的一塊,排在第一位的肯定是排序算法了
例如:1)列舉說明常用算法,說明其時間複雜度、排序思想及優缺點 2)穩定排序和非穩定排序
3)快排的最壞情況,何種措施拯救 4)快排不適合哪種情況(基本有序),怎麼判斷序列基本有序?
鏈表問題:
1)怎麼判斷鏈表中是否有環 2)兩個單項鍊表求交點
。。。。

5.測試問題

5.1.我的筆記

由於上過SQA這門課,我的總體筆記如下

###############################################################

Quality:meeting requirements&& fit for use            Prevention & detection            Verification 驗證 & validation 確認

SQA:1.testing :verify too late only good to test cases  2.software configuration management :discipline,softwaredevelopment,document control,problem tracking,changecontrol,maintenance     3.quality control :monitor,observe/requirement  Reviews inspections of code/document  checks for user deliverable

Non-execution-basedtesing:walkthrough、inspection、peer review

基於運行的缺點:太遲,只對用例有效,有些沒法測:文檔配置,規格說明等

Black-Box Testing

發佈了34 篇原創文章 · 獲贊 6 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章