亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線(xiàn)實(shí)戰(zhàn)洞察。

微軟校招筆試題復(fù)盤(pán):C/C++與算法面試核心考點(diǎn)解析

微軟校招筆試題復(fù)盤(pán):C/C++與算法面試核心考點(diǎn)解析 前幾天整理云盤(pán)里的舊資料翻出當(dāng)年備戰(zhàn)微軟校招時(shí)整理的一套題目正是網(wǎng)上流傳很廣的2014年研發(fā)工程師筆試卷B。那段時(shí)間我把它來(lái)回做了三遍每一遍都能發(fā)現(xiàn)新的問(wèn)題最后靠著這套題的復(fù)盤(pán)拿到了面試機(jī)會(huì)?,F(xiàn)在回頭看這套題雖然已經(jīng)過(guò)去快十年但它的考察思路和今天的算法面試依然高度一致非常適合正在準(zhǔn)備大廠研發(fā)崗、或者想檢驗(yàn)自己C/C和算法基本功的人當(dāng)作自測(cè)材料。先說(shuō)結(jié)論這套筆試卷B整體難度中等偏上不算變態(tài)但陷阱非常多。它不考任何框架、不考花哨的新技術(shù)核心就三塊——C/C語(yǔ)言細(xì)節(jié)、算法與數(shù)據(jù)結(jié)構(gòu)基本功、快速編碼能力。如果你能拿75分以上面試輪是很有希望進(jìn)的。下面我把這套題的題型結(jié)構(gòu)、高頻考點(diǎn)和編程大題的完整解法拆開(kāi)講順便把我踩過(guò)的坑也一并寫(xiě)出來(lái)。1. 2014年微軟研發(fā)筆試卷B整體拆解與出題邏輯1.1 筆試卷的題型分布與考察維度我手頭這份回憶版B卷結(jié)構(gòu)大概是這樣的選擇題約10道、填空題和簡(jiǎn)答題2到3道、編程大題2道外加一道選做的附加題。總時(shí)長(zhǎng)90分鐘到120分鐘卷面滿(mǎn)分100分左右。選擇題每題分值不高但勝在覆蓋面廣幾乎每道題都埋了1到2個(gè)坑簡(jiǎn)答題主要考代碼理解和邏輯推導(dǎo)比如給你一段程序讓你寫(xiě)出輸出結(jié)果編程大題則是整張卷子的重頭戲一道題動(dòng)輒20到30分基本決定你能不能過(guò)線(xiàn)。從考察維度上看這張卷子其實(shí)很克制的。它不考操作系統(tǒng)源碼、不考編譯原理、不考網(wǎng)絡(luò)協(xié)議細(xì)節(jié)重心非常明確C/C語(yǔ)言細(xì)節(jié)指針、數(shù)組、結(jié)構(gòu)體、虛函數(shù)、內(nèi)存布局大概占30%左右。算法與數(shù)據(jù)結(jié)構(gòu)鏈表、字符串、排序、查找、遞歸大概占50%左右。基礎(chǔ)系統(tǒng)概念進(jìn)程線(xiàn)程、堆棧區(qū)別、動(dòng)態(tài)鏈接之類(lèi)的概念題占剩下的20%。這個(gè)比例你品一下就知道微軟當(dāng)年的校招邏輯就是“算法定天下”。為什么這么設(shè)計(jì)后面細(xì)說(shuō)。1.2 為什么微軟喜歡靠算法題篩人有人可能覺(jué)得微軟這種體量的公司筆試應(yīng)該考系統(tǒng)設(shè)計(jì)、考業(yè)務(wù)場(chǎng)景其實(shí)恰恰相反。校招研發(fā)崗的筆試和社招完全不是一個(gè)路子。校招候選人沒(méi)有實(shí)際項(xiàng)目經(jīng)驗(yàn)面試官能快速判斷的就是兩件事第一你的計(jì)算機(jī)基礎(chǔ)扎不扎實(shí)第二你的腦子轉(zhuǎn)得快不快、代碼能不能寫(xiě)利索。算法題恰好同時(shí)滿(mǎn)足這兩個(gè)需求。一道反轉(zhuǎn)鏈表能看出你對(duì)指針和內(nèi)存的理解一道第K大元素能看出你的排序和分治功底。更重要的是算法題可以在兩個(gè)小時(shí)內(nèi)批量考察大量候選人成本低、信號(hào)強(qiáng)、很難靠背題蒙混過(guò)關(guān)。微軟面試中著名的“白板編程”文化從筆試階段就已經(jīng)開(kāi)始鋪墊了。所以你看這套2014年筆試卷B它的出題邏輯其實(shí)很簡(jiǎn)單用選擇題過(guò)濾那些基礎(chǔ)不牢的人再用編程大題留下真正能寫(xiě)代碼的人。明白這個(gè)邏輯你就知道備考重點(diǎn)應(yīng)該放在哪兒了——說(shuō)白了就是兩板斧語(yǔ)言基礎(chǔ)吃透、算法題刷透。1.3 分?jǐn)?shù)權(quán)重與時(shí)間分配策略這里直接給一份我用下來(lái)覺(jué)得最舒服的時(shí)間分配方案。假設(shè)總時(shí)長(zhǎng)120分鐘題型建議用時(shí)策略選擇題20分鐘快速掃題不確定的先標(biāo)記不戀戰(zhàn)簡(jiǎn)答題15分鐘寫(xiě)出關(guān)鍵點(diǎn)即可不要長(zhǎng)篇大論編程大題60分鐘每題留足20-30分鐘先想思路再寫(xiě)碼附加題15分鐘大題搞定了才碰拿不到不虧?rùn)z查10分鐘重點(diǎn)檢查邊界條件和數(shù)組越界我的個(gè)人習(xí)慣是拿到卷子先花兩分鐘通讀一遍不是逐字看而是掃一眼每道題大概在考什么心里有個(gè)數(shù)。尤其是編程大題我會(huì)先看題目描述和輸入輸出示例在腦子里初步構(gòu)思一下解法然后再回頭做選擇填空。這樣等做到大題的時(shí)候思路其實(shí)已經(jīng)醞釀了一會(huì)兒落筆會(huì)順很多。2. 選擇題高頻考點(diǎn)深度解析2.1 C/C內(nèi)存與指針的基本功選擇題里幾乎每年必考的就是sizeof和指針之間的關(guān)系。我記得B卷里就有一道類(lèi)似的題表面上看是一道普通的代碼輸出題實(shí)際上坑全在數(shù)組名退化上。void foo(int arr[]) { // arr 是函數(shù)參數(shù)本質(zhì)是一個(gè)指針 printf(%zu\n, sizeof(arr)); // 64位系統(tǒng)上輸出8 } int main() { int arr[10]; printf(%zu\n, sizeof(arr)); // 輸出40 printf(%zu\n, sizeof(arr) / sizeof(arr[0])); // 輸出10 foo(arr); // 輸出8 return 0; }這里有兩層坑。第一層很多人知道sizeof(arr)在main函數(shù)里是40因?yàn)閿?shù)組名代表的是整個(gè)數(shù)組10個(gè)int乘以4字節(jié)。第二層坑在于數(shù)組作為函數(shù)參數(shù)傳遞時(shí)會(huì)退化為指向首元素的指針?biāo)心阋詾槭恰皞鲾?shù)組”的寫(xiě)法實(shí)際傳的都是指針。所以在foo里面sizeof(arr)返回的是指針的大小64位環(huán)境下就是8。類(lèi)似的還有字符串相關(guān)的陷阱char *p hello; char arr[] hello; printf(%zu %zu\n, sizeof(p), sizeof(arr)); // 8 6 printf(%zu %zu\n, strlen(p), strlen(arr)); // 5 5sizeof(arr)是6因?yàn)閿?shù)組版本會(huì)在末尾自動(dòng)加一個(gè)\0sizeof(p)是8指針大小跟字符串長(zhǎng)度無(wú)關(guān)而strlen永遠(yuǎn)數(shù)到\0為止所以?xún)烧叨际?。這道題如果對(duì)字符串字面量的存儲(chǔ)機(jī)制不熟悉很容易把sizeof(p)誤寫(xiě)成6。這類(lèi)題考察的核心就一句話(huà)數(shù)組名、指針、字符串字面量這三者之間的區(qū)別。建議備考時(shí)把sizeof和strlen的對(duì)比、數(shù)組參數(shù)退化、字符數(shù)組和字符指針的區(qū)別這三個(gè)知識(shí)點(diǎn)反復(fù)吃透選擇題的C/C部分基本就能拿下大半。2.2 虛函數(shù)、虛表與運(yùn)行時(shí)多態(tài)B卷里還有一道關(guān)于虛函數(shù)的題我記得類(lèi)似這樣一個(gè)基類(lèi)指針指向派生類(lèi)對(duì)象調(diào)用一個(gè)虛函數(shù)和一個(gè)普通函數(shù)分別調(diào)用的是哪個(gè)版本。class Base { public: virtual void show() { printf(Base\n); } void normal() { printf(Base normal\n); } }; class Derived : public Base { public: void show() override { printf(Derived\n); } void normal() { printf(Derived normal\n); } }; int main() { Base *p new Derived(); p-show(); // 輸出 Derived p-normal(); // 輸出 Base normal delete p; }這道題對(duì)熟悉多態(tài)的人來(lái)說(shuō)很簡(jiǎn)單但當(dāng)時(shí)有不少同學(xué)栽在第二行。原因就是沒(méi)有記清楚只有虛函數(shù)才具備動(dòng)態(tài)綁定能力。p-show()運(yùn)行時(shí)通過(guò)虛表找到Derived的版本輸出Derived而normal()沒(méi)有加virtual編譯階段就根據(jù)指針類(lèi)型決定調(diào)用Base的版本。還有一個(gè)擴(kuò)展考點(diǎn)是析構(gòu)函數(shù)為什么要聲明為虛函數(shù)Base *p new Derived(); delete p; // 如果析構(gòu)函數(shù)不是虛函數(shù)只會(huì)調(diào)用Base的析構(gòu)可能造成內(nèi)存泄漏這也是微軟筆試面試中反復(fù)出現(xiàn)的細(xì)節(jié)題。本質(zhì)原因是delete一個(gè)基類(lèi)指針時(shí)編譯器在編譯期只能看到指針的靜態(tài)類(lèi)型不知道它到底指向的是哪個(gè)派生類(lèi)對(duì)象。如果析構(gòu)函數(shù)不是虛函數(shù)就不會(huì)觸發(fā)動(dòng)態(tài)綁定Derived部分可能得不到正確釋放。應(yīng)對(duì)這類(lèi)題我建議你梳理一張“virtual機(jī)制”的腦圖虛函數(shù)如何實(shí)現(xiàn)動(dòng)態(tài)綁定、虛表和虛指針的存在位置、構(gòu)造函數(shù)不能是虛函數(shù)的原因、析構(gòu)函數(shù)建議聲明為虛函數(shù)的原因。這幾點(diǎn)一旦理清相關(guān)選擇題無(wú)論怎么變形都不會(huì)被難住。2.3 數(shù)據(jù)結(jié)構(gòu)復(fù)雜度數(shù)組、鏈表、哈希表怎么選有一類(lèi)選擇題特別有意思題目會(huì)給出幾個(gè)常見(jiàn)操作問(wèn)哪種數(shù)據(jù)結(jié)構(gòu)效率最高。這類(lèi)題本質(zhì)上是在考察對(duì)復(fù)雜度的理解而不是死記硬背結(jié)論。比如B卷里有道題要求在頻繁插入、刪除的場(chǎng)景下選擇合適的數(shù)據(jù)結(jié)構(gòu)答案肯定是鏈表但你要能解釋為什么。操作數(shù)組鏈表哈希表隨機(jī)訪(fǎng)問(wèn)O(1)O(n)O(1) 平均頭部插入O(n)O(1)不一定中間插入O(n)O(1)不適用按值查找O(n)O(n)O(1) 平均這里要特別注意“平均”兩個(gè)字。哈希表在有大量沖突時(shí)會(huì)退化最壞情況下查找是O(n)所以在對(duì)時(shí)延要求苛刻的場(chǎng)合不能無(wú)腦選哈希表。我記得那套卷子里有一道引申題問(wèn)“如果哈希函數(shù)選得不好所有元素都映射到同一個(gè)桶里那查找復(fù)雜度是多少”正確答案是O(n)很多人會(huì)錯(cuò)選O(1)。數(shù)組最大的優(yōu)勢(shì)是緩存局部性好實(shí)際運(yùn)行速度往往比鏈表快這也是一個(gè)很多人忽略的點(diǎn)。筆試題目里如果只說(shuō)“存儲(chǔ)一連串整數(shù)主要做順序遍歷”選數(shù)組通常比鏈表更合理因?yàn)閮?nèi)存是連續(xù)的CPU緩存命中率遠(yuǎn)高于鏈表。這個(gè)結(jié)論在紙上分析復(fù)雜度時(shí)看不到但微軟這種做產(chǎn)品的公司出題人心里是裝著實(shí)際工程的。2.4 位運(yùn)算技巧兩行代碼解決一個(gè)經(jīng)典問(wèn)題B卷里關(guān)于位運(yùn)算的題不算難但很考驗(yàn)“有沒(méi)有見(jiàn)過(guò)這類(lèi)技巧”。比如判斷一個(gè)正整數(shù)是不是2的冪int isPowerOfTwo(int n) { return n 0 (n (n - 1)) 0; }原理很簡(jiǎn)單一個(gè)數(shù)如果是2的冪它的二進(jìn)制表示里只有一個(gè)1比如4是1008是1000。減去1以后原來(lái)1的位置變成0后面的位全部變成1。如果這個(gè)數(shù)原本只有一個(gè)1n (n - 1)的結(jié)果一定是0。如果原本有多個(gè)1結(jié)果是去掉最低位的1之后剩下的值不會(huì)是0。另一個(gè)經(jīng)典題是統(tǒng)計(jì)一個(gè)整數(shù)二進(jìn)制表示里有多少個(gè)1int countOnes(int n) { int count 0; while (n) { n (n - 1); count; } return count; }這段代碼每次循環(huán)把最低位的1變成0循環(huán)次數(shù)等于1的個(gè)數(shù)而不是二進(jìn)制位數(shù)。從負(fù)數(shù)到正數(shù)、從0到最大值都能正確統(tǒng)計(jì)。選擇題里問(wèn)“對(duì)于整數(shù)256這個(gè)函數(shù)返回多少”答案是1如果對(duì)位運(yùn)算不敏感很容易算成8或者其他數(shù)字。這類(lèi)位運(yùn)算技巧不建議死記代碼而是理解“減去1翻轉(zhuǎn)低位”這個(gè)規(guī)律考試時(shí)即使忘了具體實(shí)現(xiàn)也能現(xiàn)場(chǎng)推出來(lái)。平時(shí)準(zhǔn)備的時(shí)候把移位、異或、與或非的常見(jiàn)套路整理到一起每天看一遍選擇題基本不會(huì)失分。3. 編程大題從思路到實(shí)現(xiàn)的完整代碼3.1 鏈表反轉(zhuǎn)迭代、遞歸和尾遞歸鏈表反轉(zhuǎn)是微軟筆試面試?yán)锍霈F(xiàn)頻率最高的題之一2014年這套B卷里我記得也有它的變體。它考察的點(diǎn)非常集中指針操作、邊界處理、循環(huán)或遞歸思維。題目一般長(zhǎng)這樣給定一個(gè)單鏈表反轉(zhuǎn)后返回新的頭節(jié)點(diǎn)。迭代寫(xiě)法是最容易理解的核心思路是遍歷過(guò)程中不斷翻轉(zhuǎn)當(dāng)前節(jié)點(diǎn)的next方向struct ListNode { int val; struct ListNode *next; }; struct ListNode* reverseList(struct ListNode* head) { struct ListNode *prev NULL; struct ListNode *curr head; while (curr ! NULL) { struct ListNode *next curr-next; // 先保存下一個(gè)節(jié)點(diǎn) curr-next prev; // 翻轉(zhuǎn)當(dāng)前節(jié)點(diǎn)的指針 prev curr; // prev 前移 curr next; // curr 前移 } return prev; // prev 最后指向原鏈表的尾節(jié)點(diǎn)也就是新鏈表的頭 }這里最容易犯的錯(cuò)誤是忘記在修改curr-next之前保存next。一旦先把指針?lè)D(zhuǎn)了后面的節(jié)點(diǎn)就丟了。我當(dāng)年第一次寫(xiě)這個(gè)題就踩了這坑debug了半天所以在代碼注釋里也特別標(biāo)出來(lái)了。遞歸寫(xiě)法更精簡(jiǎn)但理解門(mén)檻更高struct ListNode* reverseListRecursive(struct ListNode* head) { if (head NULL || head-next NULL) { return head; } struct ListNode *newHead reverseListRecursive(head-next); head-next-next head; // 讓下一個(gè)節(jié)點(diǎn)指回當(dāng)前節(jié)點(diǎn) head-next NULL; // 斷開(kāi)原來(lái)的正向鏈接 return newHead; }遞歸思想是假設(shè)后面的部分已經(jīng)反轉(zhuǎn)好了當(dāng)前只需要處理自己這個(gè)節(jié)點(diǎn)和下一個(gè)節(jié)點(diǎn)之間的關(guān)系。空間復(fù)雜度O(n)因?yàn)檫f歸棧要用n層。筆試時(shí)兩種寫(xiě)法都可以但要記得主動(dòng)說(shuō)明時(shí)間復(fù)雜度和空間復(fù)雜度。迭代是O(1)空間遞歸是O(n)空間面試官聽(tīng)了會(huì)認(rèn)為你對(duì)復(fù)雜度有清晰認(rèn)知。變換形式還有一種“反轉(zhuǎn)鏈表前K個(gè)節(jié)點(diǎn)”或者“每K個(gè)一組反轉(zhuǎn)”難度會(huì)上去一檔但核心思想一樣只是多了一層分組和邊界處理。建議備考時(shí)把基礎(chǔ)反轉(zhuǎn)寫(xiě)得滾瓜爛熟再?lài)L試變體會(huì)順手很多。3.2 字符串去重與原地操作字符串相關(guān)的編程大題在B卷里也有露面。我記得有一道題要求把字符串中重復(fù)的字符去掉只保留第一次出現(xiàn)的順序。比如輸入abcaabcd輸出abcd。最直接的想法是開(kāi)一個(gè)新的字符串遍歷原串時(shí)判斷當(dāng)前字符是否已經(jīng)出現(xiàn)過(guò)。這在C/C里可以用一個(gè)長(zhǎng)度為128或256的int數(shù)組當(dāng)哈希表void removeDuplicates(char *str) { if (str NULL) return; int hash[256] {0}; int writeIdx 0; for (int i 0; str[i] ! \0; i) { unsigned char ch (unsigned char)str[i]; if (!hash[ch]) { hash[ch] 1; str[writeIdx] str[i]; } } str[writeIdx] \0; }這里有兩個(gè)細(xì)節(jié)特別值得注意。第一字符強(qiáng)轉(zhuǎn)成unsigned char再作為數(shù)組下標(biāo)是因?yàn)镃語(yǔ)言標(biāo)準(zhǔn)里char不一定是有符號(hào)的直接用str[i]當(dāng)下標(biāo)如果字符是負(fù)數(shù)會(huì)訪(fǎng)問(wèn)到hash[-1]這種越界區(qū)域程序直接崩潰。第二原地操作的意思是直接在原字符串上寫(xiě)入把不重復(fù)的字符依次往前放最后在正確位置補(bǔ)一個(gè)\0。這道題的時(shí)間復(fù)雜度O(n)空間O(1)因?yàn)楣1泶笮」潭ㄊ?56。筆試時(shí)如果要求“不允許用額外存儲(chǔ)空間”那可以用雙重循環(huán)O(n^2)的做法每次比較當(dāng)前字符和前面已經(jīng)保留的字符但代碼會(huì)更繞。我的建議是先把哈希表版本寫(xiě)對(duì)再根據(jù)題目限制作的放矢地調(diào)整。字符串題在微軟筆試題里占有不小的比重建議把常見(jiàn)的子串查找、回文判斷、字符計(jì)數(shù)、原地反轉(zhuǎn)、去重這幾類(lèi)題目都練一遍就能覆蓋大部分場(chǎng)景。3.3 求第K大元素快速選擇算法求無(wú)序數(shù)組中第K大的元素是B卷編程大題里比較有分量的一道。很多人第一反應(yīng)是先排序再索引復(fù)雜度O(n log n)但如果數(shù)組規(guī)模很大這個(gè)解法通常不是出題人想要的。更優(yōu)的方案是基于快速排序的partition思想也叫快速選擇Quick Select平均時(shí)間復(fù)雜度能到O(n)。求第K大可以轉(zhuǎn)換成求“第(n-K1)小”。這部分我當(dāng)時(shí)用了Lomuto分區(qū)方案的寫(xiě)法int partition(int arr[], int low, int high) { int pivot arr[high]; int i low; for (int j low; j high; j) { if (arr[j] pivot) { int temp arr[i]; arr[i] arr[j]; arr[j] temp; i; } } arr[high] arr[i]; arr[i] pivot; return i; } int quickSelect(int arr[], int low, int high, int k) { if (low high) return arr[low]; int pivotIndex partition(arr, low, high); int leftLen pivotIndex - low 1; if (leftLen k) { return arr[pivotIndex]; } else if (k leftLen) { return quickSelect(arr, low, pivotIndex - 1, k); } else { return quickSelect(arr, pivotIndex 1, high, k - leftLen); } }調(diào)用方式求第K大實(shí)際上是求第n - K 1小代入quickSelect(arr, 0, n - 1, n - K 1)??焖龠x擇的平均時(shí)間復(fù)雜度是O(n)因?yàn)槊看蝡artition之后只需要處理一邊的數(shù)據(jù)規(guī)模是按比例縮小的。但它有一個(gè)軟肋如果pivot每次都選得很差比如在近乎有序的數(shù)組里固定取最后一個(gè)元素作為pivot最壞情況時(shí)間復(fù)雜度會(huì)退化為O(n^2)。筆試時(shí)如果輸入規(guī)模很大建議對(duì)數(shù)組做一次隨機(jī)打亂或者在partition時(shí)隨機(jī)選pivot能有效降低退化概率。這道題還有一種解法是用大小為K的最小堆時(shí)間復(fù)雜度O(n log K)。如果K值很小比如“找第2大的數(shù)”堆方案在某些場(chǎng)景下更穩(wěn)定。我當(dāng)時(shí)在卷子上寫(xiě)的是快速選擇因?yàn)樗臻g復(fù)雜度O(1)不算遞歸棧而且代碼量少適合筆試這種時(shí)間緊張的場(chǎng)合。3.4 附加題全排列的非遞歸生成B卷的附加題里有一道生成全排列的題輸入一個(gè)字符串輸出它的所有排列。最經(jīng)典的解法是遞歸回溯思路是固定第一個(gè)字符然后遞歸排列后面的部分void swap(char *a, char *b) { char temp *a; *a *b; *b temp; } void permute(char *str, int start, int end) { if (start end) { printf(%s\n, str); return; } for (int i start; i end; i) { swap(str[start], str[i]); permute(str, start 1, end); swap(str[start], str[i]); // 恢復(fù)現(xiàn)場(chǎng) } }需要注意“恢復(fù)現(xiàn)場(chǎng)”這一步。如果不把交換過(guò)的字符換回去遞歸返回時(shí)字符串順序已經(jīng)被打亂后面的排列就會(huì)出現(xiàn)嚴(yán)重的重復(fù)或者遺漏。這個(gè)細(xì)節(jié)幾乎是全排列題的高頻bug點(diǎn)。如果題目要求去重比如輸入aab就要在循環(huán)里加一個(gè)條件如果某個(gè)字符在當(dāng)前位置已經(jīng)出現(xiàn)過(guò)就跳過(guò)??梢杂靡粋€(gè)長(zhǎng)度為256的數(shù)組標(biāo)記當(dāng)前位置是否已經(jīng)使用過(guò)某個(gè)字符void permuteUnique(char *str, int start, int end) { if (start end) { printf(%s\n, str); return; } int used[256] {0}; for (int i start; i end; i) { unsigned char ch (unsigned char)str[i]; if (used[ch]) continue; used[ch] 1; swap(str[start], str[i]); permuteUnique(str, start 1, end); swap(str[start], str[i]); } }非遞歸的做法是基于字典序的next_permutation思路是從右往左找到第一對(duì)相鄰的升序?qū)υ購(gòu)挠彝笳业降谝粋€(gè)大于左側(cè)元素的值交換后反轉(zhuǎn)右側(cè)序列。這個(gè)算法的手寫(xiě)實(shí)現(xiàn)比遞歸版復(fù)雜不少但好在C的STL頭文件里已經(jīng)提供了std::next_permutation。筆試時(shí)如果時(shí)間緊張直接用STL是合理選擇但前提是你得清楚它的底層層邏輯不然面試官追問(wèn)起來(lái)會(huì)比較麻煩。4. 筆試實(shí)操經(jīng)驗(yàn)與環(huán)境避坑4.1 筆試前的開(kāi)發(fā)環(huán)境準(zhǔn)備筆試之前有一個(gè)非常實(shí)際的坑就是開(kāi)發(fā)環(huán)境的準(zhǔn)備。當(dāng)年的問(wèn)卷一般會(huì)給兩個(gè)選擇一是直接在網(wǎng)頁(yè)上寫(xiě)代碼二是本地寫(xiě)完后提交。很多人習(xí)慣用Visual Studio那就要提前確認(rèn)編譯器和運(yùn)行庫(kù)是否齊全。我當(dāng)年第一次模擬練習(xí)時(shí)本地VS報(bào)了一堆鏈接錯(cuò)誤折騰半天才發(fā)現(xiàn)是運(yùn)行庫(kù)版本不匹配白白浪費(fèi)了半小時(shí)心態(tài)都有點(diǎn)崩。后來(lái)我養(yǎng)成了一個(gè)習(xí)慣除了自己常用的IDE還會(huì)用一個(gè)輕量級(jí)的編譯方式兜底。比如裝好MinGW或者GCC之后在命令行里執(zhí)行g(shù)cc -stdc99 -Wall -Wextra -o solution solution.c-Wall和-Wextra會(huì)打開(kāi)大部分警告這對(duì)檢查數(shù)組越界、未初始化變量、類(lèi)型轉(zhuǎn)換等問(wèn)題非常有幫助。筆試現(xiàn)場(chǎng)如果編譯器提示warning很多時(shí)候不是語(yǔ)言本身有問(wèn)題而是代碼里藏著隱患所以開(kāi)著警告編譯是一個(gè)好習(xí)慣。如果你參加的是允許使用本地環(huán)境的筆試建議把所有模板代碼提前準(zhǔn)備好鏈表節(jié)點(diǎn)定義、樹(shù)的節(jié)點(diǎn)定義、快排、歸并、二分查找、堆排序。這些基礎(chǔ)模板塊能夠幫你省下大量現(xiàn)場(chǎng)打字時(shí)間。注意模板不是讓你照抄答案而是減少重復(fù)敲結(jié)構(gòu)體的時(shí)間把精力留給核心算法邏輯。4.2 時(shí)間分配與做題順序做題順序這件事我見(jiàn)過(guò)太多人栽跟頭。有些人拿到卷子就從第一題開(kāi)始做選擇題做得很嗨結(jié)果到了最后一道編程大題只剩15分鐘手忙腳亂代碼都沒(méi)寫(xiě)完。這是最典型的失誤。我的策略是大題優(yōu)先。拿到卷子先花兩分鐘通讀一遍確定編程大題的題號(hào)然后直接從大題開(kāi)始寫(xiě)。原因很簡(jiǎn)單大題分值高、區(qū)分度大而且做完大題之后心態(tài)會(huì)踏實(shí)很多回頭再做選擇題就算有幾道拿不準(zhǔn)也不會(huì)太慌。具體時(shí)間分配可以這樣參考環(huán)節(jié)時(shí)間說(shuō)明通讀全卷2-3分鐘標(biāo)記不確定的題目編程大題120-25分鐘先想清楚再寫(xiě)不急著敲鍵盤(pán)編程大題220-25分鐘注意邊界條件附加題0-15分鐘如果大題順利可以嘗試選擇題填空20-25分鐘逐個(gè)擊破不確定的做個(gè)標(biāo)記檢查5-10分鐘重點(diǎn)檢查數(shù)組越界、空指針、返回值這套流程我后來(lái)推薦給好幾個(gè)學(xué)弟學(xué)妹反映都還不錯(cuò)。核心邏輯就一條用你的最佳狀態(tài)去打最能拉開(kāi)分差的仗而不是把黃金時(shí)間浪費(fèi)在低價(jià)值的題目上。4.3 面試官眼里的“好答案”長(zhǎng)什么樣筆試雖然只看最終提交但微軟的筆試結(jié)果會(huì)和后續(xù)面試聯(lián)動(dòng)。你在筆試編程題里暴露出的編碼習(xí)慣、邊界處理意識(shí)和解題思路往往會(huì)成為面試官提問(wèn)的素材。所以從筆試開(kāi)始就要有意識(shí)地培養(yǎng)“面試官友好型”的答題習(xí)慣。第一先寫(xiě)思路再寫(xiě)代碼。這不需要提交給閱卷系統(tǒng)但如果你在草稿紙上先畫(huà)一畫(huà)思路、列出時(shí)間復(fù)雜度和空間復(fù)雜度你的代碼質(zhì)量會(huì)明顯更高。我在做鏈表反轉(zhuǎn)時(shí)會(huì)先在草稿紙上畫(huà)三個(gè)節(jié)點(diǎn)模擬一下指針的移動(dòng)過(guò)程這能避免“自以為寫(xiě)對(duì)了但實(shí)際邏輯混亂”的情況。第二主動(dòng)處理邊界條件??罩羔?、空數(shù)組、只有一個(gè)元素、全是相同元素這些情況每一道題都要問(wèn)自己一遍。很多人提交的代碼在正常用例下AC一旦輸入為空或者長(zhǎng)度為1就直接崩潰這在閱卷時(shí)是致命的。多寫(xiě)幾行防御性代碼比如if (head NULL || head-next NULL) { return head; }不僅能防止崩潰還能讓閱卷人一眼看出你對(duì)邊界條件的敏感度。第三代碼風(fēng)格要干凈。不要追求一行代碼寫(xiě)三件事不要用a、b、c這種毫無(wú)意義的變量名。微軟的工程師文化比較看重可讀性和可維護(hù)性變量命名、縮進(jìn)、注釋習(xí)慣都會(huì)被潛移默化地評(píng)估。筆試不是競(jìng)賽不是寫(xiě)越短的代碼越好而是寫(xiě)的越清楚越好。5. 常見(jiàn)問(wèn)題與高效備考路線(xiàn)5.1 我踩過(guò)的一些坑備考過(guò)程中我踩過(guò)的坑不算少挑幾個(gè)典型的講給后來(lái)的朋友聽(tīng)希望你們少走彎路。第一個(gè)坑是只刷題不總結(jié)。我一開(kāi)始用在線(xiàn)題庫(kù)刷題一晚上刷十幾道當(dāng)時(shí)感覺(jué)效率極高。但隔一周再做同樣的題居然又要重頭開(kāi)始推思路。后來(lái)我改了一種方式每道題做完之后在筆記本上寫(xiě)三句話(huà)——這道題考察什么知識(shí)點(diǎn)、我的第一反應(yīng)是什么、最優(yōu)解是什么。這樣刷題的數(shù)量降下來(lái)但鞏固率大幅提升。第二個(gè)坑是忽視手寫(xiě)代碼。筆試雖然不一定要求手寫(xiě)但面試經(jīng)常要白板編程。我最初習(xí)慣在IDE里寫(xiě)代碼因?yàn)檎Z(yǔ)法高亮、自動(dòng)補(bǔ)全、即時(shí)編譯都幫我掩蓋了很多問(wèn)題。等到白板上寫(xiě)代碼時(shí)才發(fā)現(xiàn)連for循環(huán)的括號(hào)都不容易寫(xiě)對(duì)更別提處理那些需要臨時(shí)變量交換的邏輯了。建議備考后期每天至少手寫(xiě)兩三道題的完整代碼不要借助任何IDE輔助。第三個(gè)坑是忽略了編譯環(huán)境的細(xì)節(jié)。有一次我提交的代碼在本地跑得好好的結(jié)果到在線(xiàn)評(píng)測(cè)系統(tǒng)上直接編譯失敗原因是用了非C標(biāo)準(zhǔn)庫(kù)函數(shù)而評(píng)測(cè)環(huán)境的編譯參數(shù)比本地嚴(yán)格很多。從那以后我每次寫(xiě)完代碼都會(huì)在命令行用嚴(yán)格的編譯參數(shù)跑一遍比如加-Wall -Werror。-Werror會(huì)把警告當(dāng)成錯(cuò)誤強(qiáng)迫我消除所有隱患。5.2 從一個(gè)月倒計(jì)時(shí)開(kāi)始的刷題計(jì)劃如果你還有一個(gè)月就要參加類(lèi)似性質(zhì)的筆試我建議把備考規(guī)劃成四個(gè)階段每周一個(gè)主題節(jié)奏相對(duì)舒服第一周語(yǔ)言基礎(chǔ)補(bǔ)漏。重點(diǎn)復(fù)習(xí)指針、數(shù)組、內(nèi)存布局、C的類(lèi)/析構(gòu)/虛函數(shù)。每天找?guī)椎勒Z(yǔ)言細(xì)節(jié)選擇題練手不急著刷算法題先把地基打穩(wěn)。第二周數(shù)據(jù)結(jié)構(gòu)專(zhuān)項(xiàng)。鏈表、字符串、棧、隊(duì)列、二叉樹(shù)、哈希表每種結(jié)構(gòu)至少刷10道題。務(wù)必把反轉(zhuǎn)鏈表、判斷回文、二叉樹(shù)遍歷這幾類(lèi)基礎(chǔ)題練到閉眼能寫(xiě)。第三周算法專(zhuān)項(xiàng)。排序、二分、雙指針、遞歸回溯、動(dòng)態(tài)規(guī)劃。重點(diǎn)放在高頻題型上比如快速排序、歸并排序、第K大元素、最長(zhǎng)公共子串等。第四周模擬考試。找一套往年的筆試題或在線(xiàn)題庫(kù)的模擬卷設(shè)定120分鐘鬧鐘在完全模擬筆試的環(huán)境下做完整套題。做完之后認(rèn)真復(fù)盤(pán)每一道題尤其是錯(cuò)題多問(wèn)自己“為什么是這個(gè)答案”。輔助資料方面我強(qiáng)烈推薦《編程之美》這本書(shū)本身就是微軟研究院出的面試題集各種題目的思路非常貼近微軟的考察風(fēng)格。另外《C和指針》是補(bǔ)C語(yǔ)言短板的利器雖然覆蓋面廣但隨便挑幾章看就能受益匪淺。如果算法底子比較薄可以配合《算法圖解》入門(mén)再逐步過(guò)渡到《算法導(dǎo)論》的相關(guān)章節(jié)。我個(gè)人在實(shí)際操作中的一個(gè)體會(huì)是刷題不要貪多貪多嚼不爛。同一個(gè)知識(shí)點(diǎn)比如鏈表反轉(zhuǎn)把這一個(gè)點(diǎn)吃透比草草刷十道不同類(lèi)型的題更有價(jià)值。筆試考的不是你知道多少種算法而是在有限時(shí)間里把最經(jīng)典的解法寫(xiě)得又快又準(zhǔn)。最后再分享一個(gè)小技巧筆試前一周每天早起花10分鐘默寫(xiě)一份“必備代碼清單”。我當(dāng)時(shí)的清單是鏈表反轉(zhuǎn)、快速排序、歸并排序、二分查找、二叉樹(shù)前中后序遍歷、層序遍歷、快速選擇、全排列遞歸版。每天寫(xiě)一遍堅(jiān)持一周等到真正上考場(chǎng)手里有糧心里不慌。這套2014年的筆試卷B雖然年代有點(diǎn)久遠(yuǎn)但它的考點(diǎn)和經(jīng)典題目對(duì)今天的大廠校招依然很有參考價(jià)值希望這篇復(fù)盤(pán)能幫到你。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
97超碰色色| 日韩99精品视频综合区| 亚洲色综合| 一区二区三区不卡视频| 欧美成人国产精品| 亚洲精品一二三四区| 色婷婷九月天天综合| 欧中美三级一区二区三区| 狠狠色婷婷777| 无码人妻精品一区二区中文| 国产传媒av天美传媒在线| 国产一级久久久| 久久久久久久久成人av解说| 欧美日韩97| 黑人与人妻| 久久 国产精品 一区| 大香蕉一级黄色片久久| 美女十八禁| 日韩精品高清资源在线| 99久久综合网| 性色av网站| 欧美日韩狠狠爱| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 国产高清26uuu| 亚洲欧洲日韩中文字幕一区| 99精品人人爽| 一区麻豆 高清中文字幕| 亚洲国产激情国产av| 国产一区二区三三视频| 秋霞Av理论一级在线| 青青草好吊| 粉嫩AV一区夜夜嗨| 在线亚洲丝袜视频网站| 国产极品久久久| 久久一二三四五六七八九区区区 | 无码不卡亚洲成?人片| 99热国产精品| 亚洲AV在线资源| 东北老女人的激情视频| 夜夜狼人妻| 日本狂喷奶水在线播放212| 99婷婷一区二区| 水滴偷拍| 亚洲色人阁| 99少妇| 亚洲999综合| 亚洲少妇激情视频| 麻豆天天躁天天揉揉AV| 亚洲少妇在线观看| 97超级色碰碰| 99久久久| 亚洲学生妹高清av| 国产美女在线精品免费看| 综合色一区三区二区| 天天狂操夜夜狂日| 国产亚洲精品A在线观看下载| 激情综合网亚洲| 久久精品国产精品一区 | 久久极品一区二区| 日韩乱码Av| 一级A片女人高潮叫床| 久操com| 操迟操逼在巾线Fre看| 黄片qw| 加勒比在线观看一区二区| 亚洲导航深夜福利| 婷婷综合在线| 国产乱弄免费在线视频。| 97精品第3页| 日日夜夜草草草| 国产精品丝袜久久亚洲不卡| 乱色老一区二区三区的观看方式 | 情色五月天网| 伊人久久婷婷| 久久男人的天堂| AV网站高清无码在线观看| 97欧美久久久久久久| 老女人碰碰在线碰碰视频| 97视频在线观看免费高清| 欧美色图自拍| 99re在线| 最新的亚洲无吗| 激情专区综合| 久九九九九九九热| 亚洲精品久久一区二区三区蜜桃臀| 欧美色综合图片| 中文字幕免费在线观看| 一级做a爰片性色毛片久久| 黄色片一区二区三区四区五区| 最新亚洲黄色免费电影 | 欧美懂色综合网| 91精品婷婷国产综合久久| 艹比视频国产精品| 国产在线能看的你懂的| 亚洲成人性| 日韩人妻大香蕉| 久久仑合| AV男人天堂网| 日韩av性爱在线播放| 亚洲国产欧美一区二区潘金莲| 粉嫩av在线一区二区| 婷婷五月成人| 美女干逼2| 91在线免费精品视频| 国产深夜福利| 日本一区99| 91男人综合| 伊人黄色片| 日韩一级欧美一级在线观看| 在线人妻熟女一区二区三区四区五区| 欧美激色| 国产欧美精选激情视频| 91暧暧| 99久久免费看精品国产一区| 欧美日韩亚洲一区二区在线观看| 婷婷色网| 国产精品人妻无码久久久老鸭窝| 日韩啪啪网| 欧美夜夜骑视频| 91女优在线观看| 亚洲春色一区二区三区| 99re9在线| 国模久久在线| 久久久久久精品免费看A级| 91色欧美| 情色五月天网| 豆花视频操逼网址| 国产精品情侣啪啪| 亚洲高清欧美总合| AV色天香在线| 精品国产久久乱码| 麻豆国产96在线| 九九自拍伦理| 国产宅男宅女在线观看| 操逼逼中文字幕| 九九精品99| 91女人的网站| 操b在线观看| 7月婷婷综合| 天天干一干| 91老女人| ai欧美亚洲小说| 日韩草久视频| 久久av成人无码免费| 亚洲日韩乱码中文无码蜜桃臀网站| 日欧美色| 肥佬影院91| 亚洲视频一二区| 综合久久97| 五月天黄色激情视频| 91色碰| 热99这里有精品综合久久| 91狠狠色丁香婷婷综合久久精品| 夜夜欢天天干| 美女主播色欲91抠b在线播放| 激情 欧美 亚洲 小说| 黑丝少妇| 精品国产91av一区二区三区 | 青青草天天亲夜夜操网| 欧美色交| 亚洲三级网址久久最新| 岛国AB视频| 激情文学小说一区二区| 翘臀vidoes| 久综合国内精品自在自线| 97se综合| 殴美日韩m| 欧美乱伦专区| 97网站在线观看| 天美精品av| 自拍偷拍草一草| 中文字幕第23区| 另类小色呦| 欧美色乱| 久久精品99| 98一区二区精品| 国产成人无码啪| 死我十八禁| 电影69乱码96| 8050无码八戒| 亚洲巨爆乳一区二区三区四季网| 午夜精品久久久久久久| 岛国小电影| 1769一区二区| 密乳视频在线| 色欲久久99精品久久| 男人的天堂2019AV| 天天躁日日躁XXXXYY| 国产精品香蕉| 国产午夜视频| 99.色网| 日韩AC| 日韩欧美操逼xxx| 欧美综合色图片| 少妇人妻精品| 猛交交| 人妻中文字幕日韩电影| 91成人无码| 91人妻视频| 亚欧精品久久久久久久久久久| 国产成人自拍视频视频| 天天干18禁| 久湿久久 | 日本免费一区二| 在线观看色视频| 久久男人| 久久亚洲一区二区色婷婷| 青娱乐大香蕉| 蜜臀在线免费观看在线免费观看| 九九热超碰| 狼狼色丁香久久婷婷综合五月| 香蕉视频精品亚洲一区二区三区在线播| 极品AV网站在线观看| 成人天天看站长推荐| 国产精品久久久三级无码| 伊人五月天激情| 一区二区三区成人高清视频| 日本欧美亚洲高清在线看| 日韩精品免费高清视频在线| 在线日韩精品一区二区三区| 国产精品白丝| 国产无码精品久久久久久| 日韩大香蕉AV影片| 日韩特一级久久| 动漫av中文| 色www精品视频在线观看| 久久久亚洲精品电影免费看| 欧美性天天影视| 老女人爆菊| 啊啊啊啊嗯嗯嗯用力好爽| 激情久久久| 日韩三级视频一区二区三区| 99久久久| 日本不卡三级网在线播放| 91男女啊啊啊| 欧美日韩国产电影| 欧美日韩天堂| 欧美久久人体| 丰满人妻-区二区三区| 综合第一页| 欧美少妇人妻| 亚洲av综合色区无码一| 欧美 亚洲 偷拍自拍| 国产精选三级在线观看| 丁香五月激情综合| 天天摸夜夜摸| 九九九精品色乱九九九| 国产美女高潮视频| 亚欧高清| 成人日本视频人妻在线| 920日本午夜免费| av天天在线观看| 九九热男人天堂| 中文字幕天天操| 夜夜无码| 18啪啪手机免费性爱| 人人操人人摸人| 久久久久13| 老熟妇综合| 99在线啪| 欧美日韩中文字幕人妻| 国产女人和拘做爰视频| 欧美日韩性爱精品| 伊人aaa| 欧美日韩人妻精品一区二区三区 | 欧美人人AAA| 混色激情av| 亚洲青青草| 天天综合网91| 色噜噜综合网| 东北女人操比视频| 鸥美中出| japan日本高清乱xxxx| 九九色婷婷| 国产视频一区二区在线观看| 国产精品大屁股999| 百度百度日本操逼| 精品少妇一区二区三区免费观看| 欧洲亚洲人人爽爽视频| 欧美懂色综合网| 久干9操| 日韩久久超碰色| 99热线麻豆| 亚洲色系另类精品国产| 99久久综合| 91性高| 舔足天天操天天射| 亚洲夜夜欢无码一区二区| 狼人综合婷婷激情四射| 欧洲亚洲人妻无码高清久久三区四区| 逼逼逼逼操操操操操操操操操午夜剧场| 久久99午夜精品一区人妻| 欧美久久草熟女| 噜噜瑟| 亚洲色图欧美视频| 久久一本大香蕉| 日韩欧美操逼xxx| 长长久久曰曰夜夜成人网| 青操影院| 青椒国产97在线熟女| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 操逼日批| 日日狠狠久久偷偷色综合免费| 99国产精品自在自在| 色天使亚洲综合在线观看| 精品区9| 日韩射图| 玖玖视频在线资源一区二区三区| 青青草久草| 操人无码| 亚洲精品天堂久久A∨51成人漫| 人人 操人人 操人人| 99.色网| 欧美日韩不卡传媒| 丰满的三级少妇欧美久久久| 亚洲欧美日韩电影网站一区 | 91最新综合| 亚洲日韩天堂| 欧美日韩国第一区| 91在线精品一区二区三区| 精品人妻1237| 性饥渴少妇av无码毛片| 精品一区二区三区四区女| 色欲天天婬色婬香WWW夜色| 日韩紧密久久| 久久透逼视频| 中文字幕女同在线| 亚洲超碰在线| 亚洲天堂欧美| 日韩av情韩国爱禁区av一区二区| 探花激情视频| 男人天堂网站| 一区二区三区 丝袜高跟| 丰满岳乱妇一区二区三区| 亚洲丝袜制服国产91_国语字幕免费观看完整版下载第5集_ | 国产日韩手机视频在线| 伊人伊人LD| 精品人妻av在线播放| 丝袜视频一区二区在线播放国产中文 | 亚洲精品亚洲人成在线麻豆| 欧美性爱超碰97| 任你草| 熟女激情综合网| 麻豆精品天美| 久99视频| 欧美 日韩 亚洲 春色| 夜夜骑日日| 综合一区中亚洲国产成人综合精品 | 青娱乐休闲视频在线观看| 日日AV加勒比| 国产亚洲精品玖玖玖在线观看| 亚洲男人天堂网站| 久久国产对白激情浪潮 | 欧美一级黄片免费播放| 欧美成人一级麻豆| 91精品婷婷国产综合久久| 日本www操操操| 东京热天堂网| 色色青青久久| 91欧美性| 日韩99神马视频播放片在线播放| 影视综合无码少妇| 丰满熟女一区二区三区在线播放| 精品中文一区二区| 日本午夜福利视频| 丁香六月婷婷久久综合| 日韩欧美成人性爱在线| 国产v亚洲v日韩v欧美v片另类| 久久AV色| 日韩熟女视频二区| 加勒比日本在线| 思思99热| 精品久久久无码| 一起草精品人妻| 91人妻最真实刺激绿帽| 国产剧情在线| 男人的天堂99| 国产97在线播放| 午夜呻吟欧美| 日韩乱码Av| 爱我干综合| 三级色综合| 久久性爱视频免费看| 新怡红院| 麻豆色99999| 天天热精品| 大香蕉之青青草原| 亚洲宅男天堂| 色蜜AV| 六月丁香五月婷婷| 91久久99久久91熟女精品| 国产成人手机视频激情| 国产乱伦视频污| 亚洲丝袜诱惑| 91热热色| 91亚洲人| 亚洲无992tv| 蜜臀视频网站| 91处女在线观看| 97在线视频网站| 国产成人五月天丁香花| 在线中文字幕视频| 又大又大又大又粗爽高潮观看 | 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 成人精品水蜜桃久久久久久久| 久久久久久久久久精| 青青草精品| 1204av韩国| 天堂网 主播 亚洲| 国产精品一区在线播放| 色香欲综合| 亚洲色图 欧美| 国产精品免费久久久久久久久久 | 亚洲日韩美女中文字幕乱| 免费人成在线观看网站品爱网| 精品国产一区探花在线观看| 亚洲码在线中文在线观看| 乱伦一二三| 久久av一级av少妇av高潮| 艹精品| 亚洲精品第一| 亚洲AV免费在线| 国产久久一区二区午夜| 久久一二三四不卡| 中文字幕精品三级久久久| 久9爱精品| 国产一国产一级毛片古装| 亚洲欧洲中文日韩女优乱码| 久久直播国产| 五月丁香综合啪啪| 蜜桃中文字日产乱幕4区| 成人黄页| 偷窥自拍亚洲天堂网爆| 亚洲精品日日夜夜52| 开心五月激情网| 亚洲熟妇丝袜在线观看| 欧美精品久久| 亚洲激情深爱文学小说网站| 麻豆国产精品午夜视频| 亚洲色 国产 欧美 日韩| 一区二区激情国产熟女 | 蜜臀久久99精品久久久久久-DVD| 欧美一级黄色免费专区| 国产一级αv免费看片| 久久极品伊人| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 中文字幕老熟妇黄色视频| 四虎 精品 WWW| 国产人妻精品一区二区三区秋霞 | 中文字幕精品探花视频| 无色无码| 噜噜噜久久亚洲精品色情| 操逼999| 蜜臀中文字幕| 久久东京国产精品视频| 狠狠躁AV| 91久久久老司机| 蜜臀在线视频| 屌逼传媒| 东北女人性交| 亚洲黄色网址视频| 亚洲色图国产另类| 麻豆天美传媒毛片| 97啪啪| 物业黑人 AV一区| 肏逼福利网站| 色色色热| 美女好片色日本| 久久91视频| 婷婷四五区| 91女色| 日本欧美国内在线| 亚洲高清男人天堂| 四虎午夜影院| 亚洲 日本 一 二 三| 超碰在线综合97| 久久国产逼| 婷婷五月天色| 91色人| 一区二区三区成人高清视频| 色哟哟-国产专区| 欧美综合网| 久久亚洲影院一区二区| 亚洲第一免费视频| 欧美aaaaaaa| 青青草九九九九九| 98久久| av优播| 凹凸视频在线一区二区| 久久久久久亚洲精品不卡人乳| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 亚洲一区二区精品福利| 日韩成人人妻网站| 欧洲熟妇xxXx欧美老妇裸体 | 不卡超碰护士AV在线免费播放| 91操碰| 极品五月天噜噜| 91黑丝在线播放| 亚洲中亚日激情视频| 一级片视频啪啪| 啊啊啊啊啊操我视频| 麻豆视频一区二区| 欧美制服另类丝袜| 午夜人人操| 精品网站99999| 操逼逼福利视频| 超碰97人人乐| 亚洲人精品久久久喷水| 74成人在线| 狠狠操狠狠燥| 亚洲欧洲日韩国产自在线| 久久久久久久久久久999| 日韩免费大片一级播放| 亚洲色图 综合| 四虎影院成年人片| 亚洲高清91| 欧美专利1区2区3区4区5区免费| 操逼无码操逼| 蜜臀99久久精品| 久久一二三四五六七八九区区区| 久久久久久AⅤ无码免费肉站| 五月丁香六月综合缴清无码| www.超碰| 国产女同在线观看视频| 日韩少妇无吗| 免费精品99| 7777奇米影视久久| 91国产丝袜白虎| 哈哈操电影AV| 大香网站| 操逼操2| 日少妇亚洲版| 韩国一级做A片免费的| 日韩性爱啪啪视频| 一二三四视频在线社区中文字幕| 亚洲国产激情国产av| 国产日韩精品suv| 福利五区| 日日夜夜草草草| 九九色精品| 秋霞成人做爱| 久久超碰日韩精品| av草草在线电影| 欧美日韩国产传媒在线精品| 强奸乱伦大香蕉网| 日本伦乱九九九综合| 久久最新视频免费观看| 欧美日韩超碰在线| 牛黄色久午久| 高清成年美女黄网站免费大全| 久久 精品| 亚洲男人天堂视频| 国产一区二区三区,在线观看观看| 大香蕉人妻| 欧美日韩亚洲一区二区在线观看| 久久精品一区二区| 国产欧美另类久久久精品课程| 在线观看视频91| 偷拍欧美激情| 午夜福利免费福利视频| 亚洲高清无码在线桃色| 凹凸视频在线一区二区| 麻豆成人AV| 91高清日| 怡春院久久| 天天天操天天天爱| 亚洲一区亚洲天堂| 男人把坤坤插入女人的下体| 久久av色| 殴美综合色88| 久久精品一区| 欧插网站| 思思热在线观看| 色情五月婷婷| 九九黄色网| 九九人人操| 激情五月综合| 男人的天堂2010| 天天做天天爱| 久久亚洲不卡| 国产超碰国产97| 91 亚洲 欧洲| 超碰97网址| 老熟女熟妇| 青青草视频导航官网| 欧美精品第3页| 激情五月天色播| 粉嫩国产精品久久粉嫩| 99热在线观看| 九九综合久久| 九九九只有精品| 亚洲精品熟妇1区2区3区。| 桃色人妻在线视频| 色香综合天天影视综合 | 中文字幕一区二区三区蜜臀| 日韩av熟女一区二区三区成人| 四虎永久在线精品免费网址| 色诱avtt| 天天操熟妇| 97久久国产精品女不卡| 淫荡网址| 欧美一级久久久久久久大片动画| 国产精品探花视频| 尤物国产一区在线观看| 久久久久久午夜男人的天堂| 欧美午夜色妇色鬼| 天美传媒Av在线| 精品大全99999| 91中出| 天天上日日上日韩精品| 成人三一级一片aaa| 成人网站 免费观看| 丁香六月综合激情| 午夜毛片高清免费不卡| 亚洲同性aV综合| 黄色香蕉视频网站一区| 亚州免费啪啪视频| 人妻熟女一区在| 97色97好| 亚州男人天堂| 91黑人无码激情在线| 97免费在线视频在线观看| 亚洲精品1区| 91欧美在线| 久久精品店| 丰满少妇一区二区三区四区观看| 在线五区| 91丨九色丨国产丨人妻在线| 91久久久久久久久18| 四虎国产成人精品免费一女五男| 啊啊啊久久| 美女国产一区二区久久| 一区二区三区男女操逼黄色小电影| 久久人人爽av亚洲精品天堂桃色| 97爱| 亚洲高潮少妇| 超碰综合97在线| 欧美天天弄| 无码伊人久久大杳蕉中文无码| 久久深夜无码| 免费精品无码一级毛片牛牛影视| 久操大香蕉| 我中文字幕6区| 69视频入口| 亚洲精品99| 抽插一区二区视频| 欧美顶级黄色大片免费| 一及黄久一点| 亚洲一区日韩精品中文字幕| av中文在线| av天堂加勒比| 国产成人自拍视频在线| 不卡一区视频| 国产亚洲精品农村妇女 | 91久久午夜无码鲁丝片久久人妻| 久久伊人影院| 久久人妻视频| 蜜臀99久| 男人天堂久久精品| 国产精品操| 日韩欧美视频青青| 亚洲欧洲自拍| 熟女性视频| 国产自偷自拍一区| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 亚洲天堂一二| 性爱乱伦网址| 免费国产| 丁香五月天堂网| 欧美色图20P| 密桃99999| 男人天堂2030| 精品免费一区二区三区在线亚洲人成| 亚洲精品久久久久久久蜜桃臀| 欧美日韩中文亚洲v在线综合| 啊啊啊啊啊啊啊在线| 国产精品无码在线| 噜噜噜亚洲精| 东京日日夜夜| 亚洲人妻久久| 国语少妇精| 一区黄二区黄| 成人性爱av| 骚逼一区二区| 99热只有这里有精品| 亚洲人妻久久久| 男人的天堂啪啪啪啪啪蜜桃不卡| 放黄片放3级黄片没穿衣服| 久九干| 天天草夜夜草高潮片| 男人的天堂久久狠| 99.色网| 97精选久久| 欧美综合区| 亚洲视频精选| 日日干夜夜操视频h| 91深夜夜| 欧美色图99| 亚洲最大黄网| 91天堂色男人的天堂| 亚洲天堂资源在线| 九九热超碰97亚洲最新香蕉| 欧美偷偷网| 亚洲人妻中文在线视频| 国产精品一二三| 岛国A V在线免费看| 神马精品视频| 国产精品一级二级在线| 淫纸中9区| 精品久久久av无码免费| 97碰在线视频| 亚洲综合色图欧美| 夜夜嗷嗷一区二区| 最新日韩黄片| 日韩在线97| 国产精品一区二区在钱播放| 一卡二卡三卡| 夜夜爽33333| 亚洲小说视频| 中文字幕啊啊啊在线观看视频| 国产精品大香蕉| 91久久国产综合久久| 日本亚欧爱爱| 丝袜美腿校园春色| 国产91精品久久久久久久网曝门| 天天影视综合色| 久久伊人青青草| av一区二区三区 中文| 无码视频黄色网战| 亚洲天堂资源| 日韩av乱伦| 懂色AV网| 玖玖久久久| oumeizonghese,www| 男人成人黄色视频在线观看免费下载| 乱抡国产91| 啊啊啊男女| 久久97资源 网| 国产无马av| 日日躁夜夜躁狠狠躁超爽| 狠操91,com| 久久欧美按摩999| 国产精选视频| 人妻少妇久久久| 在线无码操| 两女互慰AV高潮喷水在线观看| 无码区蜜乳| 久久一区,青青青青草视频在线播放| 欧美一级A片在线看视频性色| 人人摸人人摸人人干| 亚洲激情综合另类男同| 嫩草在线视频| 6080YYY午夜理论片在线观看| 另类亚洲一区二区三区| 我要去看2个日本美女.com曹逼| 国产按摩一区二区三区| 色欧美亚洲| 久久色精品视频在线| 中文字幕在线观看网址| 91女网站| 亚洲欧美情色| av草草在线电影| 毛片视频白嫩| 伊人综合色网| 久久超碰久| 国产后入精品| 少妇蹲下露出大唇5| 99啪| 中文字幕无码不卡啪啪| 色呦呦、国产精品| 欧美色三级片91| 亚洲精品丝袜| 极品粉嫩少妇视频| 久久久久性熟视频| 一二视频神马久久传媒| 91丝袜在线视频| 狠狠操一区二区| 国产美女精品| 欧美人妻另类在线| 欧美色图20P| 国产免费一区2区3区| 99日精品欧美国产| 超碰成人人人爽人人爽| 翔田千里A片一区二区| 岛国黄片网站| 一区二区三区黄片免费观看| 用力操死我| 亚洲av综合色| 午夜福利av电影在线| 国产成人www免费人成看片| 97国产成人精品免费视频| 大香蕉92| 日韩情色视频| 极品少妇99| 亚洲人妻在线一区| 国产精品午夜福利| 精品78| 老司机天天操| 色综和网| 亚洲无码色| 能看的av| 91天天爱| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 麻豆久久久一区二区| 99热免费| 青青草玖玖爱| 91美女小视频| 久久社区一区二区三区| 色五月av| 大吊色| 91亚洲最新在线| 中国AAAAAA黄色片| 秋霞曰韩R级| 强上我不卡卡| 33044男人的天堂深夜备| 国产精品白丝| 欧美极度丰满熟妇hd| 97色插| 99超碰网| 精品毛片av一区二区| 日本Xx性爱| 色婷婷影院| 亚洲啪啪啪啪视香蕉| 亚洲男人天堂av| 艹少妇网站| 91女人的网站| 综合色区偷拍| 国产 热久久久久国产精品| 人人喜人人妻| 东北老熟女| 丰满人妻一区二区三区大胸懂色 | 亚洲AV不卡在线观看| 先锋激情∨在线视频播放| 九九九九九九九九九九九免费国产| 97超碰公开| 国产超碰| 欧美小说区视频区| 国产尹人在线视频免费| 羞答答AV中文字| 国产亚州高清国产拍精| 狠狠夜色午夜久久综合在线| 久久久国产护士丝袜美腿一| 2026国产精品视频| 国产精品高清2021在线| 丁香色五月 97干| 东北女人的毛片| 久久精品28| 国产精品一区二区亚洲人成毛片| 自拍鲍鱼一区在线高清观看免费| 视频二区美腿丝袜制服人妻欧美| 97超碰总站| av在线观看不卡网站| 色色国产| 夜夜夜爽www精品视频| 国产午夜无码片在线观看影视| 一牛一区二区三区久久| 欧美性爽xyxOOOO| 日本有码久久| 中文乱码字幕观看| 亚洲精品一区中文字幕乱码| 素人伊尹大香蕉免费下载视频| 免费作爱一级视频| 蜜臀无码一区二区| 乱伦Av网| 欧美精品,四区。五区| 韩国成人精品久久久免费看| silk lablo在线观看一区二区| 人人操,人人插| 亚洲综合113页| 人人操,人人液| 91干熟女| 欧美日韩不卡传媒| 5月婷婷6月六月丁香| 日韩黄色小说| 激情久久久| 日韩天天综合| 青青青操| 2019天天干天天操| 久草精品在线| 草b在线 | 伊人网高清| 久久发布国产伦子伦精品| heyZO天然素人无码AⅤ专区| 亚洲诱惑天堂| 色色色色色色色色色色色色色色综合| 91chinese在线| oumeisetu综合| 啊啊啊好多水| 伊人在线大香蕉视频久久| av无码精品久久久久| 免费超碰97久久| 国产亚洲日本精品在线| 国产一线二线三线av| 女人的久久久| 国产在线激情视频| 日日骚av| ,国产乱人伦精品一区二区三区| 亚洲欧洲av影音| 97视频900| 亚洲成人免费在线| 人人操,人人插| 日韩精品一区,二区 九九...老司机| 天天躁日日躁AAAXX| 国产白丝av| 人人爽人人精品乱人伦AV| 色99视频| 一二三四视频中文字幕在线看| 九热超碰| 久久一区,青青青青草视频在线播放| 色综合久久88色综合久久天天| 一起草视频在线| 亚洲限制级| 天天干天天做| 2019久久久久久久久福利| 欧美日韩另类激情图片| 成人天天爽| 美女露胸露奶头| 熟女突然公开看18禁影片 | 亚洲中文字幕熟女| 激情另类激情| 欧美 亚洲 91| 操B久久| 天天摸天天插天天日| 91GD.COM| 黄片不用下载在线观看| 欧美综合娱乐久久| 免费看黄片现成| 色99999| 射综合网| 色爱亚洲| 97综合激情| 日本免费二区三区| 国产精品电| 2017天天透天天通天天擦| 日韩在线97| 欧美一二三区四五区| 99re6久热只有精品6在线直播 | 香蕉久久国产AV一区二区| 无码WWW免费视频网站| 收看日本人日bb| 国产精品成久久久久午夜午夜| 亚洲日韩电影| 精品亚洲| 人妻色偷色噜| 日本熟妇浓毛hdsex| 尤物网站91| 3PAV乱伦视频| 日本人妻丰满熟妇久久久久久| 91黑人狂躁丰满熟妇| 欧美亚洲中文| 亚洲 无码 偷拍| 丝袜人妻av一区二区| 中国AAAAAA黄色片| 久噜噜| 天堂v无码免费视频| 99蜜桃臀久久久欧美精品网站| 色老汉色| 一牛一区二区三区久久| 97超碰资源网| 少妇色综合| 91黑丝操| 校园春色 亚洲| 清纯唯美亚洲综合| 成人一二| h4610国产人妻| 亚洲操逼无码| 成人欧美一区二区三区黑人一| 天天舔天天| 日本裸体久久色噜噜| 欧美伦乱爱| 青青久久久| 精品九九九九九九| 少妇熟女1区2区3区| 一线黄色免费性爱片| 亚洲欧美精品福利在线| 91色综| 884t在线| 美女天天干| 亚洲综合第一页| 在线观看一级α片刺激高潮视频| 岛国免费黄色网址| 欧美黄片视频在线观看免费 | 97伪v| 国产aⅴ无码片毛片一级网站| 岛国黄片网站| 午夜激情成人在线观看| 97日韩| 人人性爱视频免费| 欧美中文字幕男人天堂久久精品 | 国产丰满少妇久久久精品影院| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 97精品视频免费| 久久久111| 97人人色| 91在线视频观看国产| 亚洲精品97久久中文字幕| 极品综合| 亚洲不雅视频1区二区| 欧美亚洲国产91在线| 黄片无码在线制服| 人妻天天操天天爽视频免费| 9久精品视频在线观看| 六六久久日韩不卡| 伊人操操| 日韩AV噜噜噜一区二区三区四区| 免费视频在线一区二区不卡| 超碰免费人人| 成人一二三区| 亚洲精品aa久久伊人| 99这里都是精品| 国产中文字幕曰本毛片| 久久久人体| 黄色工厂这里只有精品| 国产精品电| 思思久热在线精品66| 91黑人无码激情在线| 蜜桃精品视频一区| av三级电影在线播放| AAA久久| 香蕉免费一区二区三区不读| 中文字幕三四区| 婷婷色播婷婷| 伊人少妇久久久| 手机看片日韩人妻| 久久国产99精品72福利| 极品色综合| 欧美性爱伊人| 超碰一区二区| 精品国产丝袜一区二区三区乱码 | 欧美天天综| 国产日韩久久| 亚洲欧洲另类| 四虎影视国产精品| 福利在线观看一区二区| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 国产日韩色综合| 日本天天人人狠狠在线日美女 | 啊啊啊 在线| 成人 日本A片无码8888| 欧美韩国你懂得在线 | 中文字幕一二三区| 女人综合网| 亚洲色图大香| 9Ⅰ超碰| 99久久婷婷| 97超碰精品图片| 亚洲午夜AV| 暴力av在线| 中字乱伦AV| 日本在线999| 91丨九色丨国产打屁股| 欧洲精品二区| 大香蕉宗合网在线| 一区二区三| 亚洲一二三精品久久网| 国产欧美在线观看免费观看| 成人AV素股で擦久久| 日本成人免费一区二区三区| 精品久久99| 人妻干天天| 好舒服视频| 91精品无码人妻系列| 91欧美少妇| 99九九精品| 日韩小电影| 伊人国产av| 久久久久亚洲av综合波多野制衣| 久久久久久9999| 亚洲美女自拍偷拍视频| aV中文麻| 男人的天堂2010| 秋霞一级鲁丝片A片| 亚洲欧美一区二区不卡视频播放 | 亚洲中文字幕乱码无码一区二区| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 日韩熟妇二区| 欧美亚洲自拍另类人妻| 二三四区精品| 九九aV| 国产精品人妻无码久久久互動交流| 麻豆久久久久久久久丝袜| 又大又长又粗又爽又黄| 亚洲素人综合| 极品五月天噜噜| 亚洲精品乱码线路中文字幕| 国产热av| 鲁鲁色综合网| 黄色AAAAA欧美| 999国产精品999久久久久久| 久久9亚洲| 亚洲无码久久久久久久| 精品福利| 大乔未久88一区| 在线播放成人网站| 丰满人妻被猛烈进入中| 国产精品3| 少妇蜜汁| 中文字幕精品资源在线| 亚洲天堂一区| 国产精品色| 亚洲天堂女优在线| 激情啪啪拍91| 人妻偷拍一区二区三区| 超碰色美女| 九九九九日本| 五月婷婷激情网| www..com操老师| 国内伊人久久久久久网站视频| 精品久久久不卡一区二区| 色蜜AV| 国语对白在线播放视频| 亚洲一区日韩精品| 精品97久久| 亚洲啪啪啪啪视香蕉| 天天日日本| 黄污污污污| 成人免费福利在线观看| 伊人专区一区二区三区| 99夜夜操| 亚洲伊人青青草| 欧亚成人在线视频| 欧美久久草熟女| 九九色婷婷| 超碰免费人妻人人| 五月丁香在线| 久操视频在线观看| 五月综合婷婷久久网站| 亚洲熟女诱惑| 久久精品一区二区三区不卡| 99久久久久久久久| 日韩偷拍一区二区三区| 91爱剪切久久| 久久久一二三四区| 97爱碰| 亚州久久9| 夜夜高潮夜夜爽高清视频一| 婷婷五月天在线观看| 亚洲欧美经典一区二区| 把腿张开老子CAO烂你| 成全在线观看免费观看| 在线观看一级α片刺激高潮视频| 精品黄色电影| 超碰97男女| 一区二区三区看视频| 东京热AV男人的天堂| 久草久日| 土豪酒店各种姿势玩弄极品幼稚| 亚州综合色图| 久久久∴| 日韩天天本| 欧美 熟女 日韩| 91激情网| 999 久久久| 亚洲色图欧美色图制服诱惑| 欧美日韩国产人人| 欧美黑人与女人91~| 亚洲av无线观看| 日韩精品黄片免费观看| 国产亚洲日本精品在线| 91操人|