版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2025年高頻華為面試題庫(kù)及答案1.請(qǐng)實(shí)現(xiàn)一個(gè)LRU緩存,要求get和put操作的時(shí)間復(fù)雜度均為O(1)。LRU(最近最少使用)緩存的核心是在容量滿時(shí)淘汰最久未使用的元素。實(shí)現(xiàn)O(1)時(shí)間復(fù)雜度需結(jié)合哈希表和雙向鏈表:哈希表用于快速查找節(jié)點(diǎn),雙向鏈表維護(hù)訪問順序(最近訪問的節(jié)點(diǎn)放在頭部,最久未訪問的在尾部)。具體步驟:定義雙向鏈表節(jié)點(diǎn),包含key、value、prev和next指針。哈希表存儲(chǔ)key到鏈表節(jié)點(diǎn)的映射,方便O(1)時(shí)間查找。get操作:若key存在,將對(duì)應(yīng)節(jié)點(diǎn)移動(dòng)到鏈表頭部(標(biāo)記為最近使用);不存在則返回-1。put操作:若key存在,更新值并移動(dòng)節(jié)點(diǎn)到頭部;若不存在,創(chuàng)建新節(jié)點(diǎn)并添加到頭部,若緩存已滿則刪除尾部節(jié)點(diǎn)(最久未使用)并從哈希表中移除對(duì)應(yīng)key。示例代碼(Python):```pythonclassListNode:def__init__(self,key=0,value=0):self.key=keyself.value=valueself.prev=Noneself.next=NoneclassLRUCache:def__init__(self,capacity):self.capacity=capacityself.size=0self.cache={}self.head=ListNode()虛擬頭節(jié)點(diǎn)self.tail=ListNode()虛擬尾節(jié)點(diǎn)self.head.next=self.tailself.tail.prev=self.headdef_move_to_head(self,node):node.prev.next=node.nextnode.next.prev=node.prevnode.prev=self.headnode.next=self.head.nextself.head.next.prev=nodeself.head.next=nodedef_add_to_head(self,node):node.prev=self.headnode.next=self.head.nextself.head.next.prev=nodeself.head.next=nodedef_remove_tail(self):node=self.tail.prevnode.prev.next=self.tailself.tail.prev=node.prevreturnnodedefget(self,key):ifkeynotinself.cache:return-1node=self.cache[key]self._move_to_head(node)returnnode.valuedefput(self,key,value):ifkeyinself.cache:node=self.cache[key]node.value=valueself._move_to_head(node)else:new_node=ListNode(key,value)self.cache[key]=new_nodeself._add_to_head(new_node)self.size+=1ifself.size>self.capacity:removed_node=self._remove_tail()delself.cache[removed_node.key]self.size-=1```2.給定無(wú)序數(shù)組nums,找出所有滿足i<j<k且nums[i]+nums[j]+nums[k]=0的三元組,要求不重復(fù)。最優(yōu)解法是排序+雙指針:首先排序數(shù)組,便于去重和指針移動(dòng)。固定第一個(gè)數(shù)nums[i],若nums[i]>0則后續(xù)無(wú)解(因數(shù)組已排序),直接跳過。用雙指針left=i+1,right=len(nums)-1,計(jì)算sum=nums[i]+nums[left]+nums[right]:若sum=0,記錄三元組,然后移動(dòng)left(跳過重復(fù)值)和right(跳過重復(fù)值);若sum<0,left右移增大sum;若sum>0,right左移減小sum。去重關(guān)鍵:i、left、right移動(dòng)時(shí)跳過與前一個(gè)元素相同的值。示例:nums=[-1,0,1,2,-1,-4],排序后[-4,-1,-1,0,1,2]。i=0(nums[i]=-4)時(shí),left=1,right=5,sum=-4+(-1)+2=-3<0→left右移;i=1(nums[i]=-1)時(shí),left=2(nums[left]=-1,與i重復(fù),跳過)→left=3(nums[left]=0),right=5,sum=-1+0+2=1>0→right左移至4(nums[right]=1),sum=-1+0+1=0→記錄[-1,0,1],繼續(xù)移動(dòng)left和right去重。最終結(jié)果為[[-1,-1,2],[-1,0,1]]。3.進(jìn)程、線程、協(xié)程的區(qū)別及適用場(chǎng)景。進(jìn)程:系統(tǒng)資源分配的基本單位,有獨(dú)立的內(nèi)存空間,進(jìn)程間通信(IPC)需通過管道、消息隊(duì)列等,切換開銷大(需保存/恢復(fù)寄存器、頁(yè)表等)。適用于計(jì)算密集型任務(wù)(如大數(shù)據(jù)處理),需隔離故障。線程:進(jìn)程內(nèi)的執(zhí)行單元,共享進(jìn)程內(nèi)存,切換時(shí)只需保存/恢復(fù)寄存器和棧,開銷較小。適用于I/O密集型任務(wù)(如Web服務(wù)器),需并發(fā)執(zhí)行但共享資源。協(xié)程(Coroutine):用戶態(tài)輕量級(jí)線程,由程序控制切換(非操作系統(tǒng)調(diào)度),無(wú)內(nèi)核開銷,可在單線程內(nèi)實(shí)現(xiàn)多任務(wù)切換。適用于高并發(fā)I/O場(chǎng)景(如網(wǎng)絡(luò)爬蟲、實(shí)時(shí)通信),需高效利用CPU。4.設(shè)計(jì)高并發(fā)秒殺系統(tǒng)的核心優(yōu)化點(diǎn)。秒殺系統(tǒng)需應(yīng)對(duì)短時(shí)間內(nèi)海量請(qǐng)求(如10萬(wàn)QPS),核心優(yōu)化點(diǎn):前端層:按鈕防重復(fù)點(diǎn)擊(灰化+倒計(jì)時(shí))、靜態(tài)資源CDN加速、客戶端限流(驗(yàn)證碼)。應(yīng)用層:緩存預(yù)熱:秒殺商品庫(kù)存提前加載到Redis(單線程、高并發(fā)),減少數(shù)據(jù)庫(kù)壓力;異步處理:訂單提供放入消息隊(duì)列(如RabbitMQ/Kafka),削峰填谷;分布式限流:使用Sentinel或Nginx限制單個(gè)用戶/IP的請(qǐng)求頻率;防刷機(jī)制:校驗(yàn)用戶登錄狀態(tài)、請(qǐng)求簽名(防止API被惡意調(diào)用)。數(shù)據(jù)庫(kù)層:樂觀鎖:通過版本號(hào)或庫(kù)存字段(如“庫(kù)存>0”條件)更新,避免超賣;分庫(kù)分表:水平拆分訂單表,減少單表壓力;讀寫分離:主庫(kù)寫庫(kù)存,從庫(kù)讀數(shù)據(jù)(需考慮主從延遲)。降級(jí)與熔斷:秒殺結(jié)束后快速返回“已售罄”,非核心功能(如評(píng)論)降級(jí)為離線處理;監(jiān)控系統(tǒng)(Prometheus)實(shí)時(shí)報(bào)警,觸發(fā)熔斷保護(hù)。測(cè)試崗技術(shù)面試高頻問題及解答1.設(shè)計(jì)微信視頻通話功能的測(cè)試用例。需覆蓋功能、性能、兼容性、安全性、異常場(chǎng)景:功能測(cè)試:正常流程:A撥打B→B接聽→畫面/聲音清晰→掛斷→提示通話結(jié)束;多人通話:3人/5人加入,畫面切換(主叫/被叫)、語(yǔ)音混音效果;功能組合:通話中切換前后攝像頭、開啟/關(guān)閉麥克風(fēng)/揚(yáng)聲器、分享屏幕。性能測(cè)試:延遲:弱網(wǎng)(2G/3G)下,畫面卡頓率(<5%)、音畫同步(延遲<200ms);資源占用:通話時(shí)CPU/內(nèi)存使用率(Android<30%,iOS<25%);續(xù)航:連續(xù)通話2小時(shí),手機(jī)電量消耗<30%。兼容性測(cè)試:系統(tǒng):Android(8.0-14.0)、iOS(12.0-17.0);設(shè)備:不同品牌(華為/小米/蘋果)、不同分辨率(1080p/2K);網(wǎng)絡(luò):Wi-Fi(2.4G/5G)、移動(dòng)數(shù)據(jù)(4G/5G)、VPN。異常測(cè)試:斷網(wǎng):通話中關(guān)閉Wi-Fi+移動(dòng)數(shù)據(jù)→提示“網(wǎng)絡(luò)異?!?,恢復(fù)后自動(dòng)重連;來電/通知:通話中收到短信/電話→視頻暫停,處理完后恢復(fù);資源沖突:通話中打開相機(jī)→提示“攝像頭被占用”,結(jié)束相機(jī)后恢復(fù)。安全性測(cè)試:隱私:未授權(quán)時(shí)調(diào)用攝像頭/麥克風(fēng)→提示權(quán)限申請(qǐng),拒絕后無(wú)法通話;加密:通話數(shù)據(jù)是否通過TLS加密,防中間人攻擊;錄屏/截屏:通話中對(duì)方錄屏→是否提示“對(duì)方已錄屏”(需符合隱私政策)。2.如何測(cè)試接口的冪等性??jī)绲刃灾付啻握{(diào)用同一接口,結(jié)果與調(diào)用一次一致。測(cè)試方法:構(gòu)造重復(fù)請(qǐng)求:使用Postman/JMeter發(fā)送相同請(qǐng)求(相同參數(shù)、相同請(qǐng)求頭),頻率10次/秒,持續(xù)1分鐘;驗(yàn)證響應(yīng)結(jié)果:檢查每次響應(yīng)的狀態(tài)碼(200)、返回?cái)?shù)據(jù)(如訂單號(hào))是否一致;檢查數(shù)據(jù)庫(kù)狀態(tài):多次調(diào)用后,訂單表的“支付狀態(tài)”“庫(kù)存”等字段值與第一次調(diào)用后一致;特殊場(chǎng)景:網(wǎng)絡(luò)延遲導(dǎo)致請(qǐng)求重試(如第一次超時(shí),客戶端重試),需驗(yàn)證最終結(jié)果正確;邊界值:測(cè)試空參數(shù)、超長(zhǎng)參數(shù)、重復(fù)參數(shù)(如orderId=123重復(fù)提交)的冪等性。綜合面試高頻問題及解答1.描述你最具挑戰(zhàn)性的項(xiàng)目,說明你的角色、遇到的問題及解決過程。示例:“我參與過某電商平臺(tái)的大促活動(dòng)系統(tǒng)優(yōu)化項(xiàng)目,擔(dān)任后端開發(fā)。項(xiàng)目核心挑戰(zhàn)是大促期間訂單支付接口的QPS從平時(shí)的2000突增至5萬(wàn),導(dǎo)致數(shù)據(jù)庫(kù)連接池耗盡,響應(yīng)時(shí)間從200ms飆升至2s。我的主要工作是:定位問題:通過Arthas監(jiān)控發(fā)現(xiàn),支付邏輯中包含3次數(shù)據(jù)庫(kù)查詢(用戶信息、商品信息、優(yōu)惠券)和2次寫操作(扣庫(kù)存、提供訂單),且未使用緩存;優(yōu)化方案:緩存預(yù)熱:將用戶信息、商品信息(7天內(nèi)不變)預(yù)加載到Redis,查詢耗時(shí)從150ms降至10ms;異步化處理:將優(yōu)惠券核銷(非實(shí)時(shí)關(guān)鍵)放入Kafka隊(duì)列,由獨(dú)立服務(wù)消費(fèi),減少主線程等待;數(shù)據(jù)庫(kù)優(yōu)化:將訂單表按用戶ID分庫(kù)(16個(gè)庫(kù)),單庫(kù)數(shù)據(jù)量從1億降至600萬(wàn),查詢速度提升40%;結(jié)果:大促期間支付接口QPS穩(wěn)定在5.2萬(wàn),響應(yīng)時(shí)間降至300ms以內(nèi),未出現(xiàn)數(shù)據(jù)庫(kù)崩潰。”2.項(xiàng)目進(jìn)度滯后時(shí),你會(huì)如何應(yīng)對(duì)?“首先,分析滯后原因:是需求變更(如新增3個(gè)核心功能)、資源不足(開發(fā)人員請(qǐng)假),還是技術(shù)難點(diǎn)(如分布式事務(wù)實(shí)現(xiàn)困難)。例如,之前某項(xiàng)目因第三方接口延遲導(dǎo)致聯(lián)調(diào)滯后3天。我采取了以下措施:優(yōu)先級(jí)排序:與產(chǎn)品經(jīng)理確認(rèn),將非核心功能(如用戶評(píng)論)調(diào)整至二期,集中資源完成支付、下單等主流程;資源協(xié)調(diào):申請(qǐng)1名臨時(shí)后端開發(fā)支援聯(lián)調(diào),同時(shí)自己加班2小時(shí)/天處理接口兼容問題;同步進(jìn)展:每天17:00發(fā)送簡(jiǎn)短日?qǐng)?bào)(完成情況、剩余任務(wù)、風(fēng)險(xiǎn)),讓團(tuán)隊(duì)和上級(jí)了解狀態(tài);最終,項(xiàng)目?jī)H延遲1天上線,通過上線后的快速迭代補(bǔ)全了二期功能?!盚R面試高頻問題及解答1.為什么選擇華為?“華為在通信領(lǐng)域的技術(shù)積累(如5G標(biāo)準(zhǔn)必要專利全球第一)、對(duì)研發(fā)的高投入(2023年研發(fā)費(fèi)用超2000億)以及‘以客戶為中心’的企業(yè)文化深深吸引我。我在校期間參與過華為云AI算法大賽,使用昇騰芯片優(yōu)化了目標(biāo)檢測(cè)模型的推理速度,對(duì)華為的技術(shù)生態(tài)有一定了解。我希望加入華為,參與前沿技術(shù)(如鴻蒙生態(tài)、AI大模型)的研發(fā),與團(tuán)隊(duì)共同解決行業(yè)難題,實(shí)現(xiàn)個(gè)人價(jià)值與公司發(fā)展的雙贏?!?.你如何理解“以客戶為中心”?“‘以客戶為中心’不僅是口號(hào),更是行動(dòng)準(zhǔn)則。例如,我之前實(shí)習(xí)時(shí)參與某銀行核心系統(tǒng)開發(fā),客戶提出‘轉(zhuǎn)賬到賬時(shí)間需從T+1縮短至實(shí)時(shí)’的需求。我們沒有直接拒絕(因涉及跨行清算系統(tǒng)改造復(fù)雜),而是主動(dòng)調(diào)研:與客戶業(yè)務(wù)部門溝通,了解實(shí)時(shí)到賬的真實(shí)場(chǎng)景(主要是小額緊急轉(zhuǎn)賬);提出分階段方案:先實(shí)現(xiàn)5萬(wàn)元以下實(shí)時(shí)到賬(通過央行超級(jí)網(wǎng)銀),5萬(wàn)元以上保持T+1;上線后,客戶的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 玻璃行業(yè)安全培訓(xùn)課件
- (完整)鋁單板施工工藝及施工方案
- 銀行員工個(gè)人的年度工作總結(jié)
- 水泥穩(wěn)定碎石基層質(zhì)量通病原因分析及防治措施
- 《2025年計(jì)算機(jī)等級(jí)考試(三級(jí)軟件測(cè)試項(xiàng)目管理)試卷及答案》
- 骨折手法復(fù)位手術(shù)知情同意書
- 選礦工技能比武考核試卷及答案
- 飛機(jī)安檢員筆試試題及答案
- 2025年試用期HR年度工作總結(jié)范文(二篇)
- 消化內(nèi)科護(hù)士年度工作總結(jié)
- 2025年京東慧采廠直考試京東自營(yíng)供應(yīng)商廠直考試題目及答案
- JJG 1148-2022 電動(dòng)汽車交流充電樁(試行)
- 周黑鴨加盟合同協(xié)議
- 黃色垃圾袋合同
- 急性呼吸窘迫綜合征ARDS教案
- 實(shí)驗(yàn)室質(zhì)量控制操作規(guī)程計(jì)劃
- 骨科手術(shù)術(shù)前宣教
- 電梯安全培訓(xùn)課件下載
- 事業(yè)單位職工勞動(dòng)合同管理規(guī)范
- 老年人靜脈輸液技巧
- 呼吸內(nèi)科一科一品護(hù)理匯報(bào)
評(píng)論
0/150
提交評(píng)論