受到乙個部落格(的啟發,決定把劍指offer的題目分一下類,便於日後的更新。
注:該分類題目序號與劍指offer(第二版)一致。
1.線性表
1.1陣列
面試題3:陣列中重複的數字
面試題4:二維陣列中的查詢
面試題21:調整陣列順序使奇數字於偶數前面
面試題39:陣列中出現超過一半的數字
面試題40:最小的k個數
面試題45:把陣列排成最小的數
面試題51:陣列中的逆序對
面試題56:陣列中數字出現的次數
面試題66;構建乘積陣列
1.2鍊錶
面試題6:從頭到尾列印鍊錶
面試題18:刪除鍊錶的節點
面試題22:鍊錶中倒數第k個節點
面試題23:鍊錶中環的入口節點
面試題24:反轉鍊錶
面試題25:合併兩個排序的鍊錶
面試題35:複雜鍊錶的複製
面試題52:兩個鍊錶的第乙個公共節點
2.字串
面試題5:替換空格
面試題17:列印從1到最大的n位數
面試題19:正規表示式匹配
面試題20:表示數值的字串
面試題20:表示陣列字串
面試題38:字串的排列
面試題43:從1~n整數中1出現的次數
面試題58:翻轉字串
面試題67:把字串轉換成整數
3.棧和佇列
面試題9:用兩個棧實現佇列
面試題30:包含min函式的棧
面試題31:棧的壓入、彈出序列
面試題-補充01:滑動視窗的最大值
4.樹面試題7:重建二叉樹
面試題26:樹的子結構
面試題27:二叉樹映象
面試題28:對稱的二叉樹
面試題32:從上到下列印二叉樹(1,2,3)
面試題33:二叉樹搜尋樹的後序遍歷
面試題34:二叉樹中和為某值的路徑
面試題36:二叉搜尋樹與雙向鍊錶
面試題37:序列二叉樹
面試題54:二叉搜尋樹的第k大節點
面試題55:二叉樹的深度
面試題68:樹中兩個節點的最低祖先
5.查詢和排序
面試題11:旋轉陣列中的最小數字
6.遞迴和回溯法
面試題10:斐波那契數列
面試題12:矩陣中的路徑
面試題13:機械人的運動範圍
7.動態規劃和貪婪
面試題42:連續子陣列的最大和
面試題49:醜數
面試題62:圓圈中最後剩下的數字
8.細節實現題
面試題15:二進位制中1的個數
面試題16:數值的整數次方
面試題29:順時針列印矩陣
面試題41:資料流中的中位數
面試題57:和為s的數字
面試題60:n個骰子的點數
面試題61:撲克牌中的順子
面試題64:1+.....+n
面試題65:不用加減乘除做加法
ps:後期再更新。。。。。
劍指offer刷題
面試題6 從尾到頭列印鍊錶 struct listnode class solution reverse res.begin res.end return res 替換空格class solution int newnumstr numstr numspace 2 if newnumstr leng...
劍指offer刷題
原題鏈結 動態規劃 class solution dp for int i 1 i len1 i else if p j 1 else return dp len1 len2 原題鏈結 數學推導 找規律 class solution else if n 3 2 return ipow 3 numso...
劍指offer刷題 2
思路 如果從前往後進行遍歷,那麼每次找到乙個空格,則需要新增兩個位元組來進行替換,我們採用先對字串進行遍歷,查詢字串中的空格的個數,然後對新的字串進行長度的計算,然後從後往前進行替換,每遇到乙個空字元,然後進行替換。class solution int oldnumber 0 int numbers...