版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2026年聯(lián)想工程師面試題目及答案一、編程題(共3題,每題20分,總分60分)1.數(shù)組旋轉(zhuǎn)問(wèn)題(20分)題目:給定一個(gè)數(shù)組,將其旋轉(zhuǎn)右移k個(gè)位置,其中k是非負(fù)數(shù)。例如,輸入數(shù)組[1,2,3,4,5]和k=2,輸出[4,5,1,2,3]。要求:-時(shí)間復(fù)雜度不超過(guò)O(n)-空間復(fù)雜度不超過(guò)O(1)示例代碼框架(Python):pythondefrotate(nums,k):""":typenums:List[int]:typek:int:rtype:NoneDonotreturnanything,modifynumsin-placeinstead."""n=len(nums)ifn==0ork%n==0:return你的代碼在這里答案與解析:pythondefrotate(nums,k):n=len(nums)ifn==0ork%n==0:returnk=k%n#處理k大于n的情況方法一:三次數(shù)組翻轉(zhuǎn)defreverse(sub_nums,start,end):whilestart<end:sub_nums[start],sub_nums[end]=sub_nums[end],sub_nums[start]start+=1end-=1reverse(nums,0,n-1)reverse(nums,0,k-1)reverse(nums,k,n-1)解析:采用三次數(shù)組翻轉(zhuǎn)的思路:1.首先翻轉(zhuǎn)整個(gè)數(shù)組2.然后翻轉(zhuǎn)前k個(gè)元素3.最后翻轉(zhuǎn)剩下的元素這種方法的時(shí)間復(fù)雜度為O(n),空間復(fù)雜度為O(1)。具體步驟以[1,2,3,4,5]和k=2為例:1.翻轉(zhuǎn)整個(gè)數(shù)組:[5,4,3,2,1]2.翻轉(zhuǎn)前2個(gè)元素:[4,5,3,2,1]3.翻轉(zhuǎn)后3個(gè)元素:[4,5,1,2,3]2.二叉樹(shù)最大深度(20分)題目:給定一個(gè)二叉樹(shù),編寫(xiě)一個(gè)函數(shù)來(lái)計(jì)算它的最大深度。二叉樹(shù)的最大深度是指從根節(jié)點(diǎn)到最遠(yuǎn)葉子節(jié)點(diǎn)的最長(zhǎng)路徑上的節(jié)點(diǎn)數(shù)。示例代碼框架(Python):python定義二叉樹(shù)節(jié)點(diǎn)classTreeNode:def__init__(self,val=0,left=None,right=None):self.val=valself.left=leftself.right=rightdefmaxDepth(root):""":typeroot:TreeNode:rtype:int"""ifnotroot:return0你的代碼在這里答案與解析:pythondefmaxDepth(root):ifnotroot:return0return1+max(maxDepth(root.left),maxDepth(root.right))解析:采用遞歸思路:1.如果當(dāng)前節(jié)點(diǎn)為空,返回02.否則,返回1(當(dāng)前節(jié)點(diǎn))加上左右子樹(shù)的最大深度這種方法的時(shí)間復(fù)雜度為O(n),空間復(fù)雜度為O(h),其中h為二叉樹(shù)的高度。對(duì)于完全平衡的二叉樹(shù),空間復(fù)雜度為O(logn);對(duì)于退化成鏈表的二叉樹(shù),空間復(fù)雜度為O(n)。3.字符串壓縮(20分)題目:實(shí)現(xiàn)一個(gè)字符串壓縮算法,將輸入的字符串中的連續(xù)相同字符合并為一個(gè)字符和出現(xiàn)次數(shù)。如果壓縮后的字符串不比原字符串短,則返回原字符串。例如,輸入"aabbcc"返回"aabcc",輸入"aaabbaa"返回"a3b2a2"。示例代碼框架(Python):pythondefcompress(s):""":types:str:rtype:str"""ifnots:return""compressed=[]count=1foriinrange(1,len(s)):ifs[i]==s[i-1]:count+=1else:compressed.append(s[i-1]+str(count))count=1compressed.append(s[-1]+str(count))return''.join(compressed)iflen(''.join(compressed))<len(s)elses答案與解析:pythondefcompress(s):ifnots:return""compressed=[]count=1foriinrange(1,len(s)):ifs[i]==s[i-1]:count+=1else:compressed.append(s[i-1]+str(count))count=1compressed.append(s[-1]+str(count))return''.join(compressed)iflen(''.join(compressed))<len(s)elses解析:使用雙指針?lè)ǎ?.初始化計(jì)數(shù)器count為12.遍歷字符串,比較當(dāng)前字符與前一字符3.如果相同,計(jì)數(shù)器加1;否則,將前一字符和計(jì)數(shù)器加入結(jié)果,重置計(jì)數(shù)器4.最后處理最后一個(gè)字符5.比較壓縮后字符串與原字符串長(zhǎng)度,返回較短的字符串這種方法的時(shí)間復(fù)雜度為O(n),空間復(fù)雜度為O(n)。二、系統(tǒng)設(shè)計(jì)題(共2題,每題30分,總分60分)1.聯(lián)想智能辦公云存儲(chǔ)服務(wù)設(shè)計(jì)(30分)題目:設(shè)計(jì)一個(gè)聯(lián)想智能辦公云存儲(chǔ)服務(wù),要求滿足以下需求:1.支持單文件最大10GB上傳2.支持文件分片上傳和重組(分片大小不超過(guò)5MB)3.支持文件版本控制(每次修改文件時(shí)創(chuàng)建新版本)4.支持文件預(yù)簽名URL生成5.支持跨區(qū)域備份要求:-說(shuō)明系統(tǒng)架構(gòu)-列出關(guān)鍵組件及其職責(zé)-說(shuō)明數(shù)據(jù)流向-分析高可用性設(shè)計(jì)答案與解析:系統(tǒng)架構(gòu):+-++-++-+|客戶端應(yīng)用||API網(wǎng)關(guān)||處理中心|+-++-++-+^|||||||+-+||||文件分片服務(wù)|-|元數(shù)據(jù)服務(wù)|-|存儲(chǔ)集群|+-+|||^|||||||+-+||||版本控制服務(wù)||預(yù)簽名服務(wù)||備份服務(wù)|+-++-++-+關(guān)鍵組件及其職責(zé):1.客戶端應(yīng)用:用戶上傳文件、管理文件、生成預(yù)簽名URL2.API網(wǎng)關(guān):路由請(qǐng)求、認(rèn)證授權(quán)、限流熔斷3.文件分片服務(wù):將大文件切分成多個(gè)分片,管理分片上傳狀態(tài)4.元數(shù)據(jù)服務(wù):存儲(chǔ)文件信息、版本信息、分片信息5.存儲(chǔ)集群:實(shí)際存儲(chǔ)文件分片,支持分布式存儲(chǔ)6.版本控制服務(wù):管理文件歷史版本,支持版本回滾7.預(yù)簽名服務(wù):生成臨時(shí)訪問(wèn)URL,用于外網(wǎng)文件下載8.備份服務(wù):實(shí)現(xiàn)跨區(qū)域備份,確保數(shù)據(jù)安全數(shù)據(jù)流向:1.文件上傳時(shí),客戶端通過(guò)API網(wǎng)關(guān)上傳文件2.API網(wǎng)關(guān)認(rèn)證后,將請(qǐng)求轉(zhuǎn)發(fā)給文件分片服務(wù)3.文件分片服務(wù)將文件切分成多個(gè)分片(每個(gè)不超過(guò)5MB)4.分片上傳到存儲(chǔ)集群的不同節(jié)點(diǎn)5.元數(shù)據(jù)服務(wù)記錄文件信息、分片信息6.版本控制服務(wù)記錄每次文件修改的版本信息7.預(yù)簽名服務(wù)根據(jù)需求生成臨時(shí)訪問(wèn)URL8.備份服務(wù)定期將數(shù)據(jù)同步到其他區(qū)域存儲(chǔ)高可用性設(shè)計(jì):1.存儲(chǔ)集群:采用分布式存儲(chǔ)架構(gòu),支持多副本冗余2.元數(shù)據(jù)服務(wù):使用高可用集群部署,數(shù)據(jù)多副本存儲(chǔ)3.API網(wǎng)關(guān):負(fù)載均衡部署,支持水平擴(kuò)展4.服務(wù)隔離:不同服務(wù)獨(dú)立部署,故障隔離5.監(jiān)控告警:實(shí)時(shí)監(jiān)控系統(tǒng)狀態(tài),異常自動(dòng)告警6.限流熔斷:防止惡意攻擊導(dǎo)致系統(tǒng)崩潰7.跨區(qū)域備份:數(shù)據(jù)自動(dòng)同步到其他區(qū)域,確保數(shù)據(jù)安全2.聯(lián)想智能辦公協(xié)同編輯系統(tǒng)設(shè)計(jì)(30分)題目:設(shè)計(jì)一個(gè)聯(lián)想智能辦公協(xié)同編輯系統(tǒng),要求滿足以下需求:1.支持多人實(shí)時(shí)編輯同一文檔2.支持操作日志記錄和回滾3.支持沖突解決機(jī)制4.支持文檔模板管理5.支持編輯權(quán)限控制要求:-說(shuō)明系統(tǒng)架構(gòu)-列出關(guān)鍵組件及其職責(zé)-說(shuō)明數(shù)據(jù)同步策略-分析可擴(kuò)展性設(shè)計(jì)答案與解析:系統(tǒng)架構(gòu):+-++-++-+|客戶端應(yīng)用||中間件服務(wù)||數(shù)據(jù)存儲(chǔ)|+-++-++-+^|||||||+-+||||WebSocket服務(wù)|-|同步引擎|-|文檔存儲(chǔ)|+-+|||^|||||||+-+||||權(quán)限控制服務(wù)||操作日志服務(wù)||模板管理服務(wù)|+-++-++-+關(guān)鍵組件及其職責(zé):1.客戶端應(yīng)用:用戶界面,展示文檔,發(fā)送編輯操作2.WebSocket服務(wù):實(shí)現(xiàn)客戶端與服務(wù)器之間的實(shí)時(shí)雙向通信3.中間件服務(wù):包含同步引擎、權(quán)限控制服務(wù)、操作日志服務(wù)等4.數(shù)據(jù)存儲(chǔ):存儲(chǔ)文檔內(nèi)容、文檔模板、用戶信息5.文檔存儲(chǔ):存儲(chǔ)實(shí)際文檔數(shù)據(jù),支持版本管理6.模板管理服務(wù):管理文檔模板,支持模板創(chuàng)建和編輯7.權(quán)限控制服務(wù):管理用戶對(duì)文檔的訪問(wèn)權(quán)限8.操作日志服務(wù):記錄用戶的編輯操作,支持回滾數(shù)據(jù)同步策略:1.OperationalTransformation(OT):處理并發(fā)編輯沖突,保證最終一致性2.WebSocket實(shí)時(shí)通信:客戶端與服務(wù)器之間通過(guò)WebSocket實(shí)時(shí)同步編輯操作3.增量更新:只發(fā)送變化的部分,減少網(wǎng)絡(luò)傳輸4.心跳機(jī)制:保持連接活躍,及時(shí)發(fā)現(xiàn)斷線重連5.沖突解決:當(dāng)檢測(cè)到?jīng)_突時(shí),根據(jù)預(yù)設(shè)規(guī)則(如最后寫(xiě)入者勝出)解決沖突可擴(kuò)展性設(shè)計(jì):1.微服務(wù)架構(gòu):將不同功能模塊拆分為獨(dú)立服務(wù),支持獨(dú)立擴(kuò)展2.負(fù)載均衡:API網(wǎng)關(guān)和各服務(wù)均采用負(fù)載均衡,水平擴(kuò)展3.緩存機(jī)制:對(duì)熱點(diǎn)文檔和模板使用緩存,提高訪問(wèn)速度4.異步處理:操作日志、權(quán)限驗(yàn)證等采用異步處理,提高系統(tǒng)響應(yīng)速度5.分布式存儲(chǔ):文檔數(shù)據(jù)采用分布式存儲(chǔ),支持海量數(shù)據(jù)存儲(chǔ)6.彈性伸縮:根據(jù)負(fù)載自動(dòng)調(diào)整服務(wù)實(shí)例數(shù)量7.服務(wù)隔離:不同服務(wù)獨(dú)立部署,故障隔離三、數(shù)據(jù)庫(kù)題(共1題,30分)1.聯(lián)想辦公系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)(30分)題目:設(shè)計(jì)聯(lián)想智能辦公系統(tǒng)的用戶文檔關(guān)系數(shù)據(jù)庫(kù),要求滿足以下需求:1.存儲(chǔ)用戶信息、文檔信息、文檔版本信息2.支持用戶對(duì)文檔的訪問(wèn)權(quán)限控制(查看、編輯、刪除)3.支持文檔版本歷史記錄4.支持文檔標(biāo)簽管理5.支持高效的文檔搜索要求:-設(shè)計(jì)E-R圖-編寫(xiě)SQL創(chuàng)建表語(yǔ)句-說(shuō)明索引設(shè)計(jì)-分析查詢優(yōu)化策略答案與解析:E-R圖:用戶(User)-用戶ID(PK)-用戶名-密碼-郵箱-角色文檔(Document)-文檔ID(PK)-用戶ID(FK)-文檔名-創(chuàng)建時(shí)間-最后修改時(shí)間-大小-標(biāo)簽文檔版本(DocumentVersion)-版本ID(PK)-文檔ID(FK)-版本號(hào)-創(chuàng)建時(shí)間-文件路徑權(quán)限(Permission)-權(quán)限ID(PK)-用戶ID(FK)-文檔ID(FK)-權(quán)限類型(查看、編輯、刪除)標(biāo)簽(Tag)-標(biāo)簽ID(PK)-標(biāo)簽名文檔標(biāo)簽(DocumentTag)-關(guān)聯(lián)ID(PK)-文檔ID(FK)-標(biāo)簽ID(FK)SQL創(chuàng)建表語(yǔ)句:sqlCREATETABLEUser(UserIDINTPRIMARYKEYAUTO_INCREMENT,UsernameVARCHAR(50)NOTNULLUNIQUE,PasswordHashCHAR(64)NOTNULL,EmailVARCHAR(100)NOTNULLUNIQUE,RoleVARCHAR(20)DEFAULT'user');CREATETABLEDocument(DocumentIDINTPRIMARYKEYAUTO_INCREMENT,UserIDINTNOTNULL,DocumentNameVARCHAR(200)NOTNULL,CreatedAtDATETIMENOTNULL,LastModifiedAtDATETIMENOTNULL,SizeBIGINTNOTNULL,FOREIGNKEY(UserID)REFERENCESUser(UserID));CREATETABLEDocumentVersion(VersionIDINTPRIMARYKEYAUTO_INCREMENT,DocumentIDINTNOTNULL,VersionNumberINTNOTNULL,CreatedAtDATETIMENOTNULL,FilePathVARCHAR(500)NOTNULL,FOREIGNKEY(DocumentID)REFERENCESDocument(DocumentID));CREATETABLEPermission(PermissionIDINTPRIMARYKEYAUTO_INCREMENT,UserIDINTNOTNULL,DocumentIDINTNOTNULL,PermissionTypeENUM('view','edit','delete')NOTNULL,FOREIGNKEY(UserID)REFERENCESUser(UserID),FOREIGNKEY(DocumentID)REFERENCESDocument(DocumentID),UNIQUE(UserID,DocumentID));CREATETABLETag(TagIDINTPRIMARYKEYAUTO_INCREMENT,TagNameVARCHAR(50)NOTNULLUNIQUE);CREATETABLEDocumentTag(AssociationID
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 6675.11-2025玩具安全第11部分:家用秋千、滑梯及類似用途室內(nèi)、室外活動(dòng)玩具
- 2026浙江金華武勤城市服務(wù)有限公司招聘50人備考題庫(kù)及答案詳解1套
- 2026祿勸彝族苗族自治縣屏山小學(xué)公開(kāi)招聘臨聘教練員備考題庫(kù)(4人)及完整答案詳解
- 2026年固廢資源化利用創(chuàng)新策略
- 工程施工機(jī)械使用保養(yǎng)手冊(cè)
- 2026福建南平浦開(kāi)集團(tuán)有限公司下屬浦城夢(mèng)筆智行公共交通有限公司的招聘18人備考題庫(kù)及1套完整答案詳解
- 財(cái)務(wù)費(fèi)用報(bào)銷培訓(xùn)課件
- 職業(yè)健康風(fēng)險(xiǎn)評(píng)估在化工企業(yè)職業(yè)健康品牌建設(shè)中的應(yīng)用
- 職業(yè)健康檔案電子化數(shù)據(jù)完整性提升方案
- 職業(yè)健康政策在醫(yī)療機(jī)構(gòu)的落地實(shí)踐
- 《筑牢安全防線 歡度平安寒假》2026年寒假安全教育主題班會(huì)課件
- 2026國(guó)家國(guó)防科技工業(yè)局所屬事業(yè)單位第一批招聘62人備考題庫(kù)及答案詳解(新)
- 信息技術(shù)應(yīng)用創(chuàng)新軟件適配測(cè)評(píng)技術(shù)規(guī)范
- 2026版安全隱患排查治理
- 道路施工安全管理課件
- 肉瘤的課件教學(xué)課件
- VTE患者并發(fā)癥預(yù)防與處理
- 車輛救援合同協(xié)議書(shū)
- 貴州省遵義市匯川區(qū)2024-2025學(xué)年八年級(jí)上學(xué)期12月期末數(shù)學(xué)試題
- UWB定位是什么協(xié)議書(shū)
- 抖音來(lái)客本地生活服務(wù)餐飲商家代運(yùn)營(yíng)策劃方案
評(píng)論
0/150
提交評(píng)論