劍指offer代碼Java實現(完整優解)

The sword refers to offer (using Java)

所有代碼全部oj過,可放心閱讀,且均選擇優解、最優解。
github地址:項目源碼

1-10

  1. 二維數組中的查找
  2. 替換空格
  3. 從尾到頭打印鏈表
  4. 重建二叉樹
  5. 用兩個棧實現隊列
  6. 旋轉數組的最小數字
  7. 斐波那契數列
  8. 跳臺階
  9. 變態跳臺階
  10. 矩形覆蓋

11-20

  1. 二進制中1的個數
  2. 數值的整數次方
  3. 調整數組順序使奇數位於偶數前面
  4. 鏈表中倒數第k個結點
  5. 反轉鏈表
  6. 合併兩個排序的鏈表
  7. 樹的子結構
  8. 二叉樹鏡像
  9. 順時針打印矩陣
  10. 包含min函數的棧

21-30

  1. 棧的壓入、彈出序列
  2. 層次打印二叉樹
  3. 二叉搜索樹的後序遍歷序列
  4. 二叉樹中和爲某一值的路徑
  5. 複雜鏈表的複製
  6. 二叉搜索樹與雙向鏈表
  7. 字符串的排列
  8. 數組中出現次數超過一半的數字
  9. 最小的k個數
  10. 連續子數組的最大和

31-40

  1. 整數中1出現的次數(從1到n整數中1出現的次數)
  2. 把數組排成最小的數
  3. 醜數
  4. 第一個只出現一次的字符
  5. 數組中的逆序對
  6. 兩個鏈表的第一個公共結點
  7. 統計一個數字在排序數組中出現的次數。
  8. 樹的深度
  9. 平衡二叉樹
  10. 數組中只出現一次的數字

41-50

  1. 和爲S的連續正數序列
  2. 和爲S的兩個數字
  3. 左旋轉字符串
  4. 翻轉單詞順序列
  5. 撲克牌順子
  6. 孩子們的遊戲(圓圈中最後剩下的數)
  7. 求1+2+3+...+n
  8. 不用加減乘除做加法
  9. 正則表達式匹配
  10. 數組中重複的數字

51-60

  1. 把字符串轉換成整數
  2. 構建乘積數組
  3. 表示數值的字符串
  4. 字符流中第一個不重複的字符
  5. 鏈表中環的入口結點
  6. 刪除鏈表中重複的結點
  7. 二叉樹的下一個結點
  8. 對稱的二叉樹
  9. 按之字形順序打印二叉樹
  10. 把二叉樹打印成多行

61-66

  1. 序列二叉樹
  2. 二叉搜索樹的第k個結點
  3. 數據流中的中位數
  4. 滑動窗口的最大值
  5. 矩陣中的路徑
  6. 機器人的運動範圍
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章