編程謎題 编程谜题

codingtmd

買這商品的人也買了...

商品描述

<內容介紹>

codingtmd所著的《編程謎題》,精選128道經典的演算法和編程題目,有針對性地做出分析和解答,並給出代碼解決方案。本書的主要思路,是利用電腦演算法知識,以分析和解決謎題的形式,總結如何把電腦常用演算法及數據結構等知識應用到相關的問題上,提高讀者分析問題、解決問題的能力。進而,希望培養讀者的編程素養,幫助讀者更好地從事程序設計的相關工作。
    本書中的題目涉及遞歸、分而治之、二及樹搜索、樹遍歷、圖遍歷、動態規劃、字符串搜索等經典的演算法問題,也是編程面試以及程序設計實踐中經常遇到的問題。本書提供一個附錄,包含一些精選的論文、圖書和參考資料,可以幫助讀者瞭解IT行業內新的進展,並藉此在IT職業生涯中提高解決問題的能力。
    本書適合對程序設計和演算法問題感興趣的讀者閱讀,尤其適合準備編程面試或者想要提高自身程序設計能力和素養的程序員學習參考。

<章節目錄>
1. 兩數之和
2. 3個數之和
3. 3個數之和最接近
4. 4個數之和
5. 二進制數相加
6. 兩個數相加
7. anagrams
8. 購買和銷售股票的最佳時機Ⅰ
9. 購買和銷售股票的最佳時機Ⅱ
10. 購買和銷售股票的最佳時機Ⅲ
11. 平衡二叉樹
12. 前序遍歷二叉樹
13. 中序遍歷二叉樹
14. 層次遍歷二叉樹
15. 二叉樹最大路徑和
16. 爬樓梯
17. 複製圖
18. 組合求和Ⅰ
19. 組合求和Ⅱ
20. 組合
21. 從前序遍歷和中序遍歷構造二叉樹
22. 能裝最多的水的容器
23. 把排序的數組轉換為二叉樹
24. 將排序的鏈表轉換為二叉樹
25. 複製帶有隨機指針的鏈表
26. 數數並讀出
27. 解碼方法
28. 不同子序列
29. 兩個整數相除
30. 編輯距離
31. 計算逆波蘭式
32. 第1個非正整數
33. 將二叉樹扁平化為鏈表
34. 加油站
35. 生成括號
36. 格雷碼
37. 實現strStr()
38. 插入間隔
39. 整數轉換為羅馬數字
40. 插值字符串
41. 跳躍遊戲
42. 跳躍遊戲II
43. 柱狀圖中最大的矩形
44. 最後一個單詞的長度
45. 一個手機號碼的字母組合
46. 鏈表中的環
47. 鏈表中的環II
48. 最大公共前綴
49. 最長連續序列
50. 最長迴文子字符串

51. 沒有重複字符的最長的子字符串
52. 最長的有效的括號
53. LRU緩存
54. 二叉樹的最大深度
55. 一條直線上的點的最大數目
56. 最大子數組
57. 兩個排序的數組的中位數
58. 合併間隔
59. 合併k個排序的鏈表
60. 合併排序的數組
61. 合併兩個排序的鏈表
62. 二叉樹的最小深度
63. 最小路徑和
64. 最小的窗口子字符串
65. 字符串相乘
66. 下一個排列
67. 迴文數字
68. 迴文劃分
69. 迴文劃分II
70. 劃分鏈表
71. Pascal三角
72. 路徑加和
73. 路徑加和II
74. 變換
75. 變換II
76. 變換序列
77. 加1
78. 填充每一個節點的Next右指針
79. 填充每一個節點的Next右指針II
80. Pow(x,n)
81. 從排序的數組中刪除重複的元素
82. 從排序的數組中刪除重複的元素II
83. 從排序的鏈表中刪除重複元素
84. 從排序的鏈表中刪除重複元素II
85. 刪除元素
86. 刪除從鏈表末尾開始的第N個節點
87. 重新排序鏈表
88. 還原IP地址
89. 整數翻轉
90. 翻轉鏈表II
91. 以k為一組翻轉節點
92. 從羅馬數字轉換為整數
93. 旋轉圖像
94. 旋轉鏈表
95. 搜索一個2D矩陣
96. 搜索一個範圍
97. 在旋轉後的排序數組中搜索
98. 在旋轉後的排序數組中搜索II
99. 搜索插入位置
100. 序列化和反序列化一個樹

101. 設置矩陣為0
102. 簡化路徑
103. 單個數字
104. 單個數字II
105. 排序顏色
106. 排序鏈表
107. Sqrt(x)
108. 字符串轉換為整數
109. 子集
110. 子集II
111. 對根到葉子的數字求和
112. 包圍的區域
113. 成對地交換節點
114. 對成樹
115. 裝雨水
116. 三角形
117. 唯一的二叉搜索樹
118. 唯一的二叉搜索樹II
119. 唯一路徑
120. 唯一路徑II
121. 大寫和小寫排列
122. 驗證迴文
123. 驗證括號
124. 驗證數獨
125. 驗證二叉搜索樹
126. 通配符匹配
127. 單詞拆分
128. 單詞拆分II
附錄  閱讀列表