JS版劍指offer


介紹

用JavaScript刷完了劍指offer,故總結下每道題的難度、解決關鍵點,詳細題解代碼可以點鏈接進去細看。

關於JS刷題的技巧可以看我之前的這篇:JS刷題總結

劍指offer的題目在牛客網上可以看:https://www.nowcoder.com/ta/coding-interviews

所有題目的代碼已經上傳到了github上:https://github.com/14glwu/FEInterviewBox/tree/master/%E5%89%91%E6%8C%87offer

 

目錄

題目=》難易程度=》關鍵詞

(1)二位數組的查找   簡單  有順序、左下角做起始點

(2)替換空格   簡單  正則

(3)從尾到頭打印鏈表   簡單  棧

(4)重建二叉樹   中等  畫圖、遞歸、注意下標

(5)用兩個棧實現隊列   簡單  注意判斷條件

(6)旋轉數組中的最小數字   簡單  二分法

(7)斐波那契數列   簡單  動態規划

(8)跳台階   簡單  動態規划

(9)變態跳台階   中等  類似斐波那契、數學分析

(10)矩形覆蓋   簡單偏難  類似斐波那契

(11)二進制中1的個數   中等  位運算n=n&n-1  

(12)數值的整數次方   中等  數學分析、位運算

(13)調整數組順序使奇數位於偶數前面   簡單  兩個變量作為奇數和偶數的下標

(14)鏈表中倒數第k個節點   簡單  雙指針法

(15)反轉鏈表   簡單  三個指針

(16)合並兩個排序的鏈表   簡單  遞歸

(17)樹的子結構   簡單偏難  注意判斷條件、遞歸

(18)二叉樹的鏡像   簡單  遞歸

(19)順時針打印矩陣   中等偏難  注意判斷條件、遞歸 || 模擬魔方法

(20)包含min函數的棧   中等  輔助棧  

(21)棧的壓入、彈出序列   中等 輔助棧 

(22)從上往下打印二叉樹  簡單  廣度遍歷、隊列

(23)二叉樹的后續遍歷序列  中等  畫圖

(24)二叉樹和為某一值的遍歷序列  中等  深度遍歷、遞歸

(25)復雜鏈表的復制   難  map保存<N,N'> || N->N'得S->S‘

(26)二叉搜索樹與雙向鏈表  中等偏難  遞歸、中序遍歷

(27)字符串的排列  難  回溯法 || 遞歸全排列法

(28)數組中出現次數超過一半的數  中等  partion法 || times變量變化法

(29)最小的k個數   中等  partion法

(30)連續子數組的最大值  中等  找規律、動態規划、注意判斷條件

(31)1~n整數中1出現的次數   中等  位運算 || 數學分析

(32)把數組排成最小的數  簡單偏難  改變排序規則

(33)丑數   難  動態規划、注意判斷條件

(34)第一個只出現一次的字符   哈希表記錄 

(35)數組中的逆序對  難+  基於歸並排序、臨時數組

(36)兩個鏈表中的第一個公共節點   簡單  雙指針法  

(37)數字在排序數組中出現的次數   簡單偏難  二分法改造    

(38)二叉樹的深度  簡單  遞歸

(39)平衡二叉樹  簡單  遞歸

(40)數組中只出現一次的數字  簡單  indexOf || map記錄 || 異或

(41)和為S的連續正數序列  中等  數學分析

(42)和為S的字符串   簡單  雙指針

(43)左旋轉字符串  簡單  裁剪拼接  

(44)單次翻轉序列  簡單  轉數組,對每項反序

(45)撲克牌順子  中等  注意題目條件、位運算判斷數字重復

(46)孩子們的游戲  難  數學分析得出公式 || 畫圖按題目做、注意下標

(47)求1+2+3+...+n  中等  位運算、遞歸

(48)不用加減乘除做加法  中等  位運算

(49)把字符串轉成整數  中等  位運算

(50)數組中重復的數字  中等  將值放到對應位置上

(51)構建乘積數組  中等偏上  借助中間變量存儲后面的乘積

(52)正則表達式的匹配  難  注意判斷條件、遞歸

(53)表示數值的字符串  中等  正則

(54)字符流中第一個不重復的數字  中等  map記錄 || indexOf法 

(55)鏈表中環的入口節點  中等  雙指針法、數學分析

(56)刪除鏈表中重復的節點  中等  加頭節點、注意多個重復

(57)二叉樹的下一個節點   中等  畫圖、分析各種情況

(58)對稱的二叉樹   中等  遞歸、對稱遍歷

(59)按之字形順序打印二叉樹   難  廣度遍歷、兩個棧

(60)把二叉樹打印成多行   中等偏難  隊列+兩個記錄變量

(61)序列化二叉樹   中等  數組代表流、遞歸

(62)二叉搜索樹的第k個節點   中等  中序遍歷+計數變量

(63)數據流的中位數   中等  partion法 || 維持排序 || 排序鏈表法 || AVL樹 || 最大堆和最小堆

(64)滑動窗口中的最大值   難  改變參考對象、雙端隊列、存下標

(65)矩陣中的路徑   中等  回溯法

(66)機器人的運動范圍   中等  回溯法

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM