題意:判斷在一個(gè)矩陣中是否存在一條包含某字符串所有字符的路徑。路徑可以從矩陣中的任意一個(gè)格子開始,每一步可以在矩陣中向左,向右,向上,向下移動(dòng)一...
題意:把一個(gè)數(shù)組最開始的若干個(gè)元素搬到數(shù)組的末尾,我們稱之為數(shù)組的旋轉(zhuǎn)。輸入一個(gè)升序的數(shù)組的一個(gè)旋轉(zhuǎn),輸出旋轉(zhuǎn)數(shù)組的最小元素。數(shù)組可能包含重復(fù)項(xiàng)...
題意:輸入一個(gè)整數(shù)n,求斐波那契數(shù)列的第n項(xiàng) 算法:遞推 思路:用兩個(gè)變量滾動(dòng)往后計(jì)算,a表示第n - 1項(xiàng),b表示第n項(xiàng),c表示第n + 1項(xiàng)...
題意:請(qǐng)用棧實(shí)現(xiàn)一個(gè)隊(duì)列,支持如下四種操作:pop,push,peek,empty 算法:模擬 思路:一個(gè)棧存放數(shù)據(jù),另一個(gè)棧做輔助棧,當(dāng)進(jìn)行p...
面試題8:二叉樹的下一個(gè)節(jié)點(diǎn) 題意:給定一棵二叉樹的其中一個(gè)節(jié)點(diǎn),請(qǐng)找出中序遍歷序列的下一個(gè)節(jié)點(diǎn)。樹中節(jié)點(diǎn)還有一個(gè)指向父節(jié)點(diǎn)的指針。 算法:模擬...
題意:輸入一棵二叉樹前序遍歷和中序遍歷的結(jié)果,請(qǐng)重建該二叉樹。 算法:遞歸 思路:1)利用前序遍歷找根節(jié)點(diǎn),即前序遍歷的第一個(gè)值就是根節(jié)點(diǎn)的值2...
題意:輸入一個(gè)鏈表的頭結(jié)點(diǎn),按照 從尾到頭 的順序返回節(jié)點(diǎn)的值。 算法:遍歷鏈表 思路:先從前往后遍歷一遍輸入的鏈表,將結(jié)果記錄在答案數(shù)組中。最...
題意:請(qǐng)實(shí)現(xiàn)一個(gè)函數(shù),把字符串中的每個(gè)空格替換成"%20"。 算法:雙指針掃描 思路:1)遍歷原數(shù)組,并根據(jù)空格個(gè)數(shù)求出最終的字符串長度2)使用...
題意:在一個(gè)二維數(shù)組中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請(qǐng)完成一個(gè)函數(shù),輸入這樣的一個(gè)二維數(shù)組和一個(gè)整數(shù)...