8.24 百度面試記錄
刪除連結串列中倒數第k個節點
// 1 2 3 4 6 2 => 1 2 3 6
public void getKNode(ListNode head,int k){
ListNode slow = head, fast= head;
while(k>0 && fast!= null ) {
fast= fast.next;
k--;
}
if (slow !=null && fast!= null ){
fast=fast.next;
slow=slow.next;
}
slow.next=slow.next.next;
return ;
}
陣列裡重複次數最多的值
public int returnMost(int[] arr){
if (arr == null || arr.length == 0) return 0;
int Max = 0;
int result = 0;
HashMap<Integer,Integer> map = new HashMap<>();
for (int i : arr) {
//map.get(i) == null?map.put(i, 1): map.put(i, map.get(i) + 1);
if (map.get(i) == null ){
map.put(i,1);
}
else {
map.put(i,map.get(i)+1);
}
if (map.get(i) >= Max) {
Max = map.get(i);
result = i;
}
}
System.out.println(result);
return result;
}
sql 查詢太慢,怎麼優化
https://tech.meituan.com/2014/06/30/mysql-index.html
完整的http請求
過程
• 域名解析
• 發起TCP3次握手
• 建立TCP連線後發起http請求
• 伺服器響應請求,返回結果
• 瀏覽器得到html標籤程式碼
• 瀏覽器解析html程式碼中的資源,例如js,css,img等
• 瀏覽器對頁面進行渲染並呈現給使用者
為什麼tcp需要第三次握手
謝希仁版《計算機網路》中的例子是這樣的,“已失效的連線請求報文段”的產生在這樣一種情況下:client發出的第一個連線請求報文段並沒有丟失,而是在某個網路結點長時間的滯留了,以致延誤到連線釋放以後的某個時間才到達server。本來這是一個早已失效的報文段。但server收到此失效的連線請求報文段後,就誤認為是client再次發出的一個新的連線請求。於是就向client發出確認報文段,同意建立連線。假設不採用“三次握手”,那麼只要server發出確認,新的連線就建立了。由於現在client並沒有發出建立連線的請求,因此不會理睬server的確認,也不會向server傳送資料。但server卻以為新的運輸連線已經建立,並一直等待client發來資料。這樣,server的很多資源就白白浪費掉了。採用“三次握手”的辦法可以防止上述現象發生。例如剛才那種情況,client不會向server的確認發出確認。server由於收不到確認,就知道client並沒有要求建立連線。”。主要目的防止server端一直等待,浪費資源。
登入頁面測試
1、功能測試(Function test)
• 輸入正確的使用者名稱和密碼,點選提交按鈕,驗證是否能正確登入。
• 輸入錯誤的使用者名稱或者密碼, 驗證登入會失敗,並且提示相應的錯誤資訊。
• 登入成功後能否能否跳轉到正確的頁面
• 使用者名稱和密碼,如果太短或者太長,應該怎麼處理
• 使用者名稱和密碼,中有特殊字元,和其他非英文的情況
• 記住使用者名稱的功能
• 登陸失敗後,不能記錄密碼的功能
• 使用者名稱和密碼前後有空格的處理
• 密碼是否以星號顯示
2、介面測試(UI Test)
• 佈局是否合理,2個testbox 和一個按鈕是否對齊
• testbox和按鈕的長度,高度是否複合要求
• 介面是否好看
• 圖片,顏色,字型,超連結,是否都顯示正確
3、效能測試(performance test)
• 開啟登入頁面,需要幾秒
• 輸入正確的使用者名稱和密碼後,登入成功跳轉到新頁面,不超過5秒
• 能支援多少個使用者同時登陸
4、安全性測試(Security test)
• 登入成功後生成的Cookie,是否是httponly (否則容易被指令碼盜取)
• 使用者名稱和密碼是否通過加密的方式,傳送給Web伺服器
• 使用者名稱和密碼的驗證,應該是用伺服器端驗證, 而不能單單是在客戶端用javascript驗證
• 使用者名稱和密碼的輸入框,應該遮蔽SQL 注入攻擊
• 使用者名稱和密碼的的輸入框,應該禁止輸入指令碼 (防止XSS攻擊)
• 錯誤登陸的次數限制(防止暴力破解)
5、可用性測試(Usability Test)
• 是否可以全用鍵盤操作,是否有快捷鍵
• 輸入使用者名稱,密碼後按回車,是否可以登陸
6、相容性測試(Compatibility Test)
• 主流的瀏覽器下能否顯示正常已經功能正常(IE,6,7,8,9, Firefox, Chrome, Safari,等)
• 不同的平臺是否能正常工作,比如Windows, Mac
• 移動裝置上是否正常工作,比如Iphone, Andriod
• 不同的解析度
• 不同的瀏覽器大小 (瀏覽器最大化, 和非最大化)
索引的原理
什麼是索引
優點與缺點
原理
想要理解索引原理必須清楚一種資料結構「平衡樹」(非二叉),也就是b tree或者 b+ tree,重要的事情說三遍:“平衡樹,平衡樹,平衡樹”。當然, 有的資料庫也使用雜湊桶作用索引的資料結構 , 然而, 主流的RDBMS都是把平衡樹當做資料表預設的索引資料結構的。
linux--
列印第二列
awk '{print $2}' test.file
# awk -F ":" '{print $2}' test2.txt : f 分割
cut -d " " -f 2 test1.txt
# cut -d ":" -f 2 test2.txt
sed "s/^[^ ]* \([^ ]*\) [^ ]* [^ ]*/\1/g" test1.txt
# sed "s/^[^:]*:\([^:]*\):[^:]*:[^:]*/\1/g" test2.txt
埠衝突
檢視9000這個埠是否被使用
netstat -lnt | grep 9000
# # 根據埠檢視程式資訊
lsof -i : 9000
# 結束佔用埠的程式:killall 程式名
# 雖然我們不建議用這種本末倒置的方法來解決衝突問題,
#但某些情況下還是可以直接結束掉佔用程式的
#(比如重啟Apache時程式沒有完全退出,導致重啟失敗)
自動化測試的價值
(1)你怎麼做的自動化
(2)什麼樣的介面級別加入自動化
(3)自動化使用 場景,收益
效能測試
(1)關注於哪些指標
(2)怎麼調優?
多型
(1)什麼是多型
(2)好處
https://www.cnblogs.com/chenssy/p/3372798.html
相關文章
- 面試記錄面試
- 面試題記錄面試題
- 面試記錄2面試
- 記錄近期面試題,面試總結面試題
- 記錄一次測開面試題記錄面試題
- 筆記:記錄一次面試筆記面試
- JS面試考題記錄JS面試
- 最近校招面試記錄面試
- 面試刷題偶有記錄面試
- Android面試題記錄Android面試題
- c#面試題記錄C#面試題
- iOS面試·一個iOS程式設計師的BAT面試全記錄(內含百度+網易+阿里面試真題)iOS面試程式設計師BAT阿里
- 2017面試分享(js面試題記錄)JS面試題
- 面試演算法題記錄面試演算法
- 記錄一次面試題面試題
- 騰訊社招iOS面試記錄iOS面試
- 記錄最近的幾次面試(PHP)面試PHP
- 面試問題記錄 三 (JavaWeb、JavaEE)面試JavaWeb
- 前端筆試題面試題記錄前端筆試面試題
- 4.21 阿里電話面試問題記錄阿里面試
- 前端筆試題面試題記錄(下)前端筆試面試題
- 面試問題記錄 一 (基礎部分)面試
- 面試就業過程的記錄了面試就業
- 百度iOS面試iOS面試
- 百度面試題面試題
- 【面試】阿里iOS開發實習電話面試記錄(一)面試阿里iOS
- 【面試】騰訊iOS開發實習電話面試記錄(二)面試iOS
- [面試] 記錄一次來自 bigo 的電話面試面試Go
- 記錄疫情下PHP中高階面試重點PHP面試
- 記錄一些js面試題以及解法JS面試題
- 面試記錄2020.12.19面試
- 2020年面試隨想&記錄面試
- 記錄下為了面試需要看的文章面試
- Java面試題記錄第二天Java面試題
- 記錄自己面試遇到的難題及分析面試
- 百度js面試題JS面試題
- 關於百度地圖api的實用方法記錄地圖API
- 第一次遠端面試記錄貼面試