- 相關(guān)推薦
四道微軟面試算法題
(1)一個(gè)整數(shù)數(shù)列,元素取值可能是0—65535中的任意一個(gè)數(shù),相同數(shù)值不會(huì)重復(fù)出現(xiàn)。0是例外,可以反復(fù)出現(xiàn)。
請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法,當(dāng)你從該數(shù)列中隨意選取5個(gè)數(shù)值,判斷這5個(gè)數(shù)值是否連續(xù)相鄰。
注意:
-5個(gè)數(shù)值允許是亂序的。比如:8 7 5 0 6;
-0可以通配任意數(shù)值。比如:8 7 5 0 6中的0可以通配成9或者4;
-0可以多次出現(xiàn);
-復(fù)雜度如果是o(n2)則不得分。
(2)設(shè)計(jì)一個(gè)算法,找出二叉樹上任意兩個(gè)結(jié)點(diǎn)的最近共同父結(jié)點(diǎn),復(fù)雜度如果是o(n2)則不得分。
(3)一棵排序二叉樹,令f=(最大值+最小值)/2,設(shè)計(jì)一個(gè)算法,找出距離f值最近、大于f值的結(jié)點(diǎn)。復(fù)雜度如果是o(n2)則不得分。
(4)一個(gè)整數(shù)數(shù)列,元素取值可能是1~n(n是一個(gè)較大的正整數(shù))中的任意一個(gè)數(shù),相同數(shù)值不會(huì)重復(fù)出現(xiàn)。設(shè)計(jì)一個(gè)算法,找出數(shù)列中符合條件的數(shù)對(duì)的個(gè)數(shù),滿足數(shù)對(duì)中兩數(shù)的和等于n+1。復(fù)雜度最好是o(n),如果是o(n2)則不得分。
【四道微軟面試算法題】相關(guān)文章:
微軟面試算法題08-09
抽煙也是面試的一道題07-31
微軟面試題目07-31
微軟面試--“車輪戰(zhàn)”07-31
九道超有趣的名企面試邏輯題07-31