学姐百度实习面经(轻松拿offer)
本系列歷史文章:
學(xué)姐,來挑戰(zhàn)字節(jié)最牛部門
最強(qiáng)阿里巴巴歷年經(jīng)典面試題匯總:C++研發(fā)崗
關(guān)于我的那些面經(jīng)——百度后端(附答案)
《關(guān)于我的那些面經(jīng)》滴滴Java崗(附答案)
朋友面神策數(shù)據(jù)庫,第五個問題不會,直接再見
美女學(xué)姐面了美團(tuán)阿里京東,這些經(jīng)驗(yàn)實(shí)在太真實(shí)了
學(xué)姐騰訊產(chǎn)品面經(jīng)
學(xué)姐總結(jié)奇安信18k常問面試題
?這個系列計(jì)劃收集幾百份朋友和讀者的面經(jīng),作者合集方便查看,各位有面經(jīng)屯著可以聯(lián)系我哦
?
1、測試環(huán)境搭建過程
2、? 驗(yàn)證環(huán)境部署是否成功時 跑測試用例 接口是什么樣的?(服務(wù)對外提供的調(diào)用接口)
3、? 數(shù)據(jù)庫 表 有個字段 name字段 name=liuguoge 唯一標(biāo)識id=3 修改name=guogeliu
update user set name=guogeliu where id=3;
4、寫鏈表翻轉(zhuǎn)(說思路,代碼中每一行的作用)
public ListNode ReverseList(ListNode head) {
?????? //當(dāng)前節(jié)點(diǎn)是head,pre為當(dāng)前節(jié)點(diǎn)的前一節(jié)點(diǎn),next為當(dāng)前節(jié)點(diǎn)的下一節(jié)點(diǎn)
??????? if(head==null)return null;
??????? ListNode pre = null;
??????? ListNode next = null;
??????? while(head!=null){
??????????? //先用next保存head的下一個節(jié)點(diǎn)的信息
??????????? next = head.next;
??????????? //保存完next,就可以讓head從指向next變成指向pre了
??????????? head.next = pre;
??????????? //讓pre,head,next依次向后移動一個節(jié)點(diǎn),繼續(xù)下一次的指針反轉(zhuǎn)
??????????? pre = head;
??????????? head = next;
??????? }
??????? //head為null,反轉(zhuǎn)完畢,pre就是反轉(zhuǎn)后鏈表的第一個節(jié)點(diǎn)
??????? return pre;
??? }
5、 Scp和wget區(qū)別
curl是libcurl這個庫支持的,wget是一個純粹的命令行命令。
curl支持更多的協(xié)議。
curl 支持FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS, FILE,
Wget 支持HTTP, HTTPS and FTP.
curl 默認(rèn)支持HTTP1.1(也支持1.0),而wget僅僅支持HTTP1.0規(guī)范。
4.curl在指定要下載的鏈接時能夠支持URL的序列或集合,而wget則不能這樣;
5.wget支持遞歸下載,而curl則沒有這個功能。
7、? 重載與重寫區(qū)別
定義區(qū)別:
①重載是指不同的函數(shù)使用相同的函數(shù)名,但是函數(shù)的參數(shù)個數(shù)或類型不同。調(diào)用的時候根據(jù)函數(shù)的參數(shù)來區(qū)別不同的函數(shù)。
②覆蓋(也叫重寫)是指在派生類中重新對基類中的虛函數(shù)重新實(shí)現(xiàn)。即函數(shù)名和參數(shù)都一樣,只是函數(shù)的實(shí)現(xiàn)體不一樣。
類的關(guān)系區(qū)別
覆蓋是子類和父類之間的關(guān)系,垂直關(guān)系;重載是同一個類中方法之間的關(guān)系,水平關(guān)系。
3.產(chǎn)生方法區(qū)別
覆蓋只能由一個方法或只能由一對方法產(chǎn)生關(guān)系;重載是多個方法之間的關(guān)系。
4.參數(shù)列表要求區(qū)別
覆蓋要求參數(shù)列表相同;重載要求參數(shù)列表不同。
5.調(diào)用方法區(qū)別
覆蓋關(guān)系中,調(diào)用方法體是根據(jù)對象的類型來決定;而重載關(guān)系是根據(jù)調(diào)用時的實(shí)參表與形參表來選擇方法體的。
?
1、介紹實(shí)習(xí)經(jīng)歷
2、? 測試環(huán)境的檢查(接口測試)
3、? 寫代碼:奇數(shù)在前,偶數(shù)在后
private static void fun(int[] arr) {
??? if (arr.length == 0)return;
??? int front = 0,end = arr.length-1;//設(shè)置兩個指針,一個指向頭部,一個指向尾部
while (front < end){
?????? //從前往后找偶數(shù)
??????? while (front < arr.length && arr[front]%2 == 1) front++;
????????????? //從后往前找奇數(shù)
??????? while (end >= 0 && arr[end]%2 == 0)end--;
??????? //將前面的偶數(shù)與后面奇數(shù)交換位置
if (front < end){
??????????? int temp = arr[front];
??????????? arr[front] = arr[end];
??????????? arr[end] = temp;
??????? }
??? }
}
?
?
如何判斷bug前后端?
前端的問題:
在用戶輸入數(shù)據(jù)后,發(fā)送的請求沒有帶數(shù)據(jù)或者數(shù)據(jù)錯誤。
后臺已經(jīng)傳回了數(shù)據(jù),但在前端顯示不出來。
后端的問題:
?????? 接受請求后,存儲/修改錯誤(查看數(shù)據(jù)庫)
?????? 返回數(shù)據(jù)錯誤
?
抓包工具來進(jìn)行分析
通過請求與響應(yīng)來判斷。
1.請求接口url是否正確
如果請求的接口url錯誤,為前端的bug
2.傳參是否正確
如果傳參不正確,為前端的bug
3請求接口url和傳參都正確,查看響應(yīng)是否正確
如果響應(yīng)內(nèi)容不正確,為后端bug
4,后端bug需要查看 服務(wù)器的log日志
?
?
3.一個真實(shí)的測試場景,問如何排查問題
4.黑盒測試和白盒測試和灰盒測試區(qū)別以及都有什么方法
黑盒:只關(guān)注輸出的正確性
白盒:了解程序內(nèi)部邏輯結(jié)構(gòu)、對所有邏輯路徑進(jìn)行測試。
灰盒測試,介于二者之間的,關(guān)注輸出的正確性,同時也關(guān)注內(nèi)部表現(xiàn)。
?
方法:
黑盒:等價類劃分、邊值分析、因—果圖、錯誤推測等
白盒:代碼檢查法、靜態(tài)結(jié)構(gòu)分析法、靜態(tài)質(zhì)量度量法、邏輯覆蓋法、基本路徑測試法、路徑覆蓋
?
?
三次握手
第一次:發(fā)送請求
第二次:告訴對方受到了請求并同意
第三次:告訴對方收到了你的同意,可以開始了。
?
為什么連接的時候是三次握手,關(guān)閉的時候卻是四次握手?
?
因?yàn)楫?dāng)Server端收到Client端的SYN連接請求報文后,可以直接發(fā)送SYN+ACK報文。其中ACK報文是用來應(yīng)答的,SYN報文是用來同步的。
但是關(guān)閉連接時,當(dāng)Server端收到FIN報文時,很可能并不會立即關(guān)閉SOCKET,所以只能先回復(fù)一個ACK報文,告訴Client端,"你發(fā)的FIN報文我收到了"。只有等到我Server端所有的報文都發(fā)送完了,我才能發(fā)送FIN報文,因此不能一起發(fā)送。故需要四步握手。
?
tcp為什么能穩(wěn)定傳輸
[1] 確認(rèn)和重傳機(jī)制
建立連接時三次握手同步雙方的“序列號 + 確認(rèn)號 + 窗口大小信息”,是確認(rèn)重傳的基礎(chǔ),
傳輸過程中,如果Checksum校驗(yàn)失敗、丟包或延時,發(fā)送端重傳。
[2] 數(shù)據(jù)排序
TCP有專門的序列號SN字段,可提供數(shù)據(jù)re-order
[3] 流量控制
窗口和計(jì)時器的使用。TCP窗口中會指明雙方能夠發(fā)送接收的最大數(shù)據(jù)量
[4] 擁塞控制
TCP的擁塞控制由4個核心算法組成。
“慢啟動”“擁塞避免”“快速重傳 ”“快速恢復(fù)”
?
HTTP狀態(tài)碼分別表示啥
信息響應(yīng)(100–199)
成功響應(yīng)(200–299)
重定向(300–399)
客戶端錯誤(400–499)
服務(wù)器錯誤 (500–599)
?
總結(jié)
以上是生活随笔為你收集整理的学姐百度实习面经(轻松拿offer)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《以撒的结合胎衣+》新人物亚巴顿玩法解说
- 下一篇: leetcode1299. 将每个元素替