壹面:
1個數據庫事務,四個屬性,分別有什麽用,如何實現。壹致性不好。
說到重做和撤消日誌,他問我它們分別有什麽用,說重做日誌是錯誤的。
3如何保證數據庫的隔離性,使用悲觀鎖和樂觀鎖有什麽區別。MVCC的設計目的是什麽以及如何使用版本號來判斷數據的可見性。
4問了壹個算法,從1到N的所有數字都按字典順序打印,怎麽做到的。
我談到了按數組排序並詢問了復雜性。我聊了很久。
怎麽優化,按數字特征順序打印,問這個東西類似什麽結構。提示是壹棵樹,然後我說了壹棵多叉樹,問我怎麽實現。最後,我實際上使用了dfs來遍歷樹的每個分支。
5.有兩種方法可以實現多線程的同步和並發。每個方法都有A部分代碼和B部分代碼。我希望兩個線程分別執行這兩個方法,讓它們運行部分A代碼,然後壹起執行它們。如何實現?
我說要用循環障礙來實現等待。
然後他問我如何使用信號量,並建議可以使用另壹個線程。
然後我說了壹個計劃。
7問及該項目
8如何優化遞歸代碼
改為尾部遞歸或循環。
面試官說沒有,引導員說用棧實現遞歸。
問我需要將哪些數據推入堆棧。他說應該是方法參數、返回值和返回地址。
兩面:
1自我介紹,項目10分鐘過去。
如何平衡服務器的負載,哪些算法可用,哪些算法更好,壹致性哈希的原理,以及如何避免DDOS攻擊請求擊中少數機器。
TCP連接和四波中三次握手的作用是什麽,四波的最後壹次ack是什麽?為什麽時間在等待?為什麽是2msl。
如何實現數據庫的備份和恢復,如何制作主從副本,什麽時候會出現數據不壹致的情況,如何解決。
今天面試太多了,我記不清楚了。。。
妳見過並使用過開源技術嗎?妳了解分布式存儲嗎?
7妳想往什麽方向發展?
8 Linux來查看cpu使用率較高的進程。
9查看占用端口的進程和進程偵聽的端口。
10如何查詢日誌文件中的所有ip和正則表達式?
三面(8月3日更新):
數據庫部門真的很嚴格,問題也挺難的。
1告訴我有關這個項目的情況。
2妳平時了解Linux什麽操作系統?談談Linux故障排除中常用的命令,如ps、top、netstat、free、du等。
3 Linux內存管理算法,問是不是頁面置換算法,他說是。說lru和fifo,問我lru有什麽缺點,沒回答。
妳了解Linux的文件系統嗎?告訴我inode節點、文件和目錄的原理。他問我是否不知道具體的文件系統ext2、ext3,答案是不知道。
5.流程溝通的方法有哪些?問我分別怎麽用,管道有哪些類型,有什麽優缺點。
問我是否知道服務器硬件。。他壹臉懵,問我知不知道Raid,說了幾句廢話,我就聽不懂了。
7貝殼知道嗎?我沒怎麽寫過。
我聽說妳懂Java。告訴我JVM內存模型,它有哪些區域以及它有什麽作用。
9談gc算法,談分代回收。
妳知道10的設計模式嗎?我說了七種,分別問我怎麽用。妳真的應用它們了嗎?我拉了壹下。
11 MySQL的引擎,有什麽區別和使用場景?
12查詢最新的10數據,並思考了很久,通過id desc限制10的順序。
13 MySQL中的union all和union有什麽區別?我編的,應該是錯的。
14 MySQL的加入方式有哪些?背後的原理是什麽?不,我只知道表現形式。
15 Redis懂什麽,數據結構和基本原理。問我Redis是怎麽做集群的,回答主從哨兵和集群。如何讓Redis持久化?aof和rdb有什麽區別?有什麽優缺點?
16 Redis使用哨兵部署有什麽問題?我說過,如果它需要擴展,它仍然需要集群部署。
妳了解17分布式系統嗎?告訴我Hadoop知道什麽。我說我對基本組件有壹點了解,並簡單地構建了環境。
18 MapReduce的合並器是做什麽的?我說這是合並的結果。我問我什麽時候會用它,但我不知道。
當19 hadoop分發任務時,壹個作業失敗。Hadoop會做什麽?我不知道,但我猜它會繼續執行。。
20個hadoop分發任務,如果壹個節點特別慢,拖慢了整體速度怎麽辦?我猜yarn可以通過為每個任務分配相同的資源來避免這種情況。他似乎不滿意。
21 hadoop回答不好。讓我對比兩個10g的文件,2g內存,高重復率,過濾出不同的內容。我說把它分成十個散列,並比較每個散列的結果集。看來他說的還行。
排序算法知道什麽,巴拉巴拉。
23用隊列計算樹的高度,我說用層次遍歷記錄節點的高度。
24壹個黑名單集合,數據量很大,快速查詢某個值是否在集合中,如何設計,我說的是Bloom filter。
25仍然是最後壹個問題,說這個黑名單可能需要動態添加、刪除和修改,以及如何設計它以避免訪問響應緩慢。我壹點都不知道。我胡說八道要添加硬件並將其存儲在內存中,但遭到拒絕。然後他說,算了。
前壹個問題的黑名單怎麽分發?討論了分片的方案,並根據地址的哈希值確定分片所在的節點。
妳了解分布式數據庫嗎?我不太明白他問的是什麽。當他說他不明白時,他覺得他應該問壹下數據庫的分布式方案。
妳想問什麽?據他說,有2-3輪面試,這令人震驚。
全程50分鐘,可以說是目前為止最難的壹次?
百度AI雲賬號和新聞部
壹面:
1項目
說說AOP吧。
3動態* * *和靜態* * *的區別是什麽
TCP和IP消息是否會碎片化以及在什麽情況下會碎片化。
TCP分包後會不會出現ip碎片化?
5做題
無限長的軌道。兩車同向行駛,車會滴水,怎麽會相遇?這個問題就像腦筋急轉彎。
寫壹個斐波那契數列
遞歸公式,需要改進
Dp模式,需要優化的空間。
對dp使用三個變量而不是數組需要改進。
我說數學公式好吧。
7談談Linux的內存結構。我說我只懂JVM,他讓我講壹下。
兩者的記憶如何映射,有什麽關系,沒有。
8號不見了
兩面:
再來說說1項目。耗時超過10分鐘。
2排序算法,復雜度,比較。快速排序的空間復雜度為logn。
3我來說說OSI七層模型。我說五層模型,然後他讓我加,問各層功能,問wifi屬於哪壹層。
4.線程之間的同步是以什麽方式進行的,提到了對象方法。
問我使用hashmap時要重寫哪兩個方法,為什麽要重寫,巴拉巴拉,在什麽情況下重寫。
5平時使用過哪些數據結構,和list中使用的有什麽區別?
Ioc和aop在6 Spring。國際奧委會有何評論?
自動連線和資源之間有什麽區別,範圍是什麽?
自動連線如何配置這兩個類中的壹個?
7我忘記寫單例模式了。巴拉巴拉進行了雙重測試,並在中途多次更換。
8 Java會出現內存泄漏嗎?三個區域在什麽情況下會出現內存泄漏?
百度AI雲
這似乎是基本R&D工程師的職位。
壹方
1項目
2隊列和堆棧的區別
3兩個堆棧實現隊列,兩個堆棧實現最小堆棧。
4數據庫的事務性,如何實現這些屬性
5什麽是事務隔離級別,什麽是默認級別?
提交的閱讀有什麽問題,它用於什麽場景?
7二叉樹,平衡二叉樹,會用到哪些場景?
什麽是僵屍進程和孤兒進程,它們的危害是什麽?
9如何實現主從復制。
10 Redis妳用它做什麽?為什麽不使用mq作為異步隊列呢?
11分布式文件系統,妳知道的,HDFS,說說原理。
12 Java中常用的價格類型是什麽?
13 Java如何將字節類型轉換為字符串
為什麽14 Java的字符串類型是不可變的?
15怎麽了?
百度核心搜索
壹面:
1自我介紹
2 docker和k8知道什麽?
研究生們學了哪些課程?
妳了解操作系統嗎?說說進程和線程。
5死鎖及處理方法
6內存、虛擬內存和頁面替換7網絡理解,說說三次握手和四次波。
8妳對數據庫了解多少?mysql索引,事務和鎖都講到了。
9 Redis,講了數據結構、持久化模式和使用場景。
10分布式模式學什麽,如何平衡負載,dns,nginx,lvs和硬件,如何解決壹致性問題,2pc,3pc,raft和paxos,zab。
10 mysql大表數據查詢,如何優化,分表分數據庫。
11單鏈表判斷循環由快慢指針解決。
12完全二叉樹判斷:
兩面:
1項目
2 docker和kubenetes的原理和理解
3 docker的cgroup知道嗎?
4 Kubenetes的結構,以及擴建是如何完成的。
5 Java的四個參考文獻
6 Java的線程通信模式
7 Linux進程通信模式
8 Java線程池
9算法1-N+1從這些數字中取出N個,並詢問還剩哪壹個。。我說加減,面試官說很棘手。不可能是這樣的。我說比較數組下標,但他仍然說這很棘手。
於是我讓他提醒我,他說整理壹下再找。。額
然後我想了兩個用空間換時間的方法。壹種是用hashmap遍歷兩個數組。壹個是合並數組後統計數據出現的次數,也是hashmap。
10給定壹串數字,找出所有可能的IP地址組合,例如192168111,組合為192.168.1.10。應該是LeetCode的問題我之前沒有完全寫出來,但是我在現場憋住了。
這個代碼應該是正確的。面試官看了20分鐘才說好。然後我們沈默了20分鐘,中間他說了幾句話。
最後面試官說他們部門有兩輪面試。
下次見!如何獲得答案:點贊、評論、關閉~
原文來源:/討論/90112?type = post & amp訂單= jing & amppos = & amppage = 2 & ampncTraceId = & ampchannel =-1 & amp;source _ id = search _ post _ nctrack & amp;gio _ id = FD 441016d0b 12571a 898266 fe8d 1c8c 6-1657195040955