幫助中心 | 我的帳號 | 關於我們

數據結構LeetCode在線編程實訓(C\C++語言全程視頻講解版高等學校數據結構課程系列教材)

  • 作者:編者:李春葆|責編:王冰飛
  • 出版社:清華大學
  • ISBN:9787302605201
  • 出版日期:2022/10/01
  • 裝幀:平裝
  • 頁數:324
人民幣:RMB 79.8 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書是《數據結構教程(第6版·微課視頻·題庫版)》(李春葆主編,清華大學出版社出版,簡稱《教程》)的配套在線編程實訓指導書,詳細給出了《教程》中所有在線編程題(共143道在線編程題,均來自LeetCode網站)的解題思路和參考源代碼,提供了全部題目的講解視頻。書中在線編程題不僅涵蓋數據結構課程的基本知識點,還融合了各個知識點的運用和擴展,學習、理解和借鑒這些參考答案是掌握和提高數據結構知識的最佳途徑。本書自成一體,可以脫離《教程》單獨使用。
    本書適合高等院校電腦及相關專業學生使用,也適合IT企業面試者和編程愛好者研習。

作者介紹
編者:李春葆|責編:王冰飛
    李春葆,武漢大學電腦學院教授。主要研究方向為數據挖掘和演算法設計,先後主持和參加多個大型研究項目。主要為本科生講授數據結構(15年以上)和軟體工程等課程,為研究生講授軟體開發新技術、數據倉庫與數據挖掘等課程,並出版十多部精品著作。

目錄
配套資源
第1章  緒論
  1.1  LeetCode網站在線編程說明
  1.2  基礎演算法設計
    1.2.1  LeetCode7——整數反轉★
    1.2.2  LeetCode66——加一★
    1.2.3  LeetCode1——兩數之和★
    1.2.4  LeetCode1588——所有奇數長度子數組的和★
第2章  線性表
  2.1  順序表及其應用
    2.1.1  順序表的實現
    2.1.2  LeetCode67——二進位求和★
    2.1.3  LeetCode27——移除元素★
  2.2  有序順序表及其應用
    2.2.1  LeetCode26——刪除有序數組中的重複項★
    2.2.2  LeetCode80——刪除有序數組中的重複項Ⅱ★★
    2.2.3  LeetCode88——合併兩個有序數組★
    2.2.4  LeetCode4——尋找兩個正序數組的中位數★★★
  2.3  鏈表的實現
    2.3.1  LeetCode707——設計鏈表★★
    2.3.2  LeetCode382——鏈表隨機結點★★
  2.4  單鏈表及其應用
    2.4.1  LeetCode203——移除鏈表元素★
    2.4.2  LeetCode237——刪除鏈表中的結點★
    2.4.3  LeetCode206——翻轉鏈表★
    2.4.4  LeetCode92——翻轉鏈表Ⅱ★★
    2.4.5  LeetCode328——奇偶鏈表★★
    2.4.6  LeetCode86——分隔鏈表★★
    2.4.7  LeetCode24——兩兩交換鏈表中的結點★★
    2.4.8  LeetCode876——鏈表的中間結點★
    2.4.9  LeetCode234——迴文鏈表★
    2.4.10  LeetCode143——重排鏈表★★
    2.4.11  LeetCode147——對鏈表進行插入排序★★
    2.4.12  LeetCode25——k個一組翻轉鏈表★★★
    2.4.13  LeetCode725——分隔鏈表★★
  2.5  有序單鏈表及其應用
    2.5.1  LeetCode83——刪除有序鏈表中的重複元素★
    2.5.2  LeetCode82——刪除有序鏈表中的重複元素Ⅱ★★
    2.5.3  LeetCode21——合併兩個有序鏈表★
    2.5.4  LeetCode23——合併k個升序鏈表★★★
第3章  棧和隊列
  3.1  棧的實現
    3.1.1  LeetCode1381——設計一個支持增量操作的棧★★
    3.1.2  LeetCode155——最小棧★
  3.2  棧的應用
    3.2.1  STL中的stack棧容器
    3.2.2  LeetCode20——有效的括弧★
    3.2.3  LeetCode1249——移除無效的括弧★★
    3.2.4  LeetCode946——驗證棧序列★★
    3.2.5  LeetCode1441——用棧操作構建數組★

  3.3  表達式求值
    3.3.1  LeetCode150——逆波蘭表達式求值★★
    3.3.2  LeetCode227——基本計算器Ⅱ★★
    3.3.3  LeetCode224——基本計算器★★★
  3.4  隊列的實現
    3.4.1  LeetCode622——設計循環隊列★★
    3.4.2  LeetCode641——設計循環雙端隊列★★
  3.5  棧和隊列相互實現
    3.5.1  STL中的queue隊列容器
    3.5.2  LeetCode225——用隊列實現棧★
    3.5.3  LeetCode232——用棧實現隊列★
第4章  串
  4.1  基本串操作
    4.1.1  LeetCode125——驗證迴文串★
    4.1.2  LeetCode14——最長公共前綴★
    4.1.3  LeetCode443——壓縮字元串★★
  4.2  串模式匹配
    4.2.1  LeetCode28——實現strStr()★
    4.2.2  LeetCode459——重複的子字元串★
    4.2.3  LeetCode1408——數組中的字元串匹配★
第5章  遞歸
  5.1  簡單遞歸演算法設計
    5.1.1  LeetCode509——斐波那契數★
    5.1.2  LeetCode50——Pow(x,n)★★
    5.1.3  LeetCode206——翻轉鏈表★
    5.1.4  LeetCode234——迴文鏈表★
    5.1.5  LeetCode24——兩兩交換鏈表中的結點★★
  5.2  複雜遞歸演算法設計
    5.2.1  LeetCode59——螺旋矩陣Ⅱ★★
    5.2.2  LeetCode51——n皇后
第6章  數組和矩陣
  6.1  數組
    6.1.1  LeetCode485——最大連續1的個數★
    6.1.2  LeetCode169——多數元素★
    6.1.3  LeetCode283——移動零★
  6.2  矩陣
    6.2.1  LeetCode867——轉置矩陣★
    6.2.2  LeetCode1572——矩陣對角線元素的和★
    6.2.3  LeetCode566——重塑矩陣★
    6.2.4  LeetCode766——托普利茨矩陣★
第7章  樹和二叉樹
  7.1  二叉樹的先序、中序和後序遍歷
    7.1.1  二叉樹的存儲結構及其創建
    7.1.2  LeetCode144——二叉樹的先序遍歷★★
    7.1.3  LeetCode94——二叉樹的中序遍歷★★
    7.1.4  LeetCode145——二叉樹的後序遍歷★★
  7.2  二叉樹的層次遍歷
    7.2.1  LeetCode102——二叉樹的層次遍歷★★
    7.2.2  LeetCode107——二叉樹的層次遍歷Ⅱ★★
  7.3  二叉樹遍歷演算法的應用

    7.3.1  LeetCode872——葉子相似的樹★
    7.3.2  LeetCode617——合併二叉樹★
    7.3.3  LeetCode236——二叉樹的最近公共祖先★★
    7.3.4  LeetCode226——翻轉二叉樹★
    7.3.5  LeetCode114——二叉樹展開為鏈表★★
    7.3.6  LeetCode104——二叉樹的最大深度★
    7.3.7  LeetCode111——二叉樹的最小深度★
    7.3.8  LeetCode993——二叉樹的堂兄弟結點★
    7.3.9  LeetCode515——在每個樹行中找最大值★
    7.3.10  LeetCode513——找樹左下角的值★
    7.3.11  LeetCode101——對稱二叉樹★
    7.3.12  LeetCode662——二叉樹最大寬度★★
    7.3.13  LeetCode112——路徑總和★
    7.3.14  LeetCode257——二叉樹的所有路徑★
    7.3.15  LeetCode113——路徑總和Ⅱ★★
  7.4  二叉樹的構造
    7.4.1  LeetCode105——從先序與中序遍歷序列構造二叉樹★★
    7.4.2  LeetCode106——從中序與後序遍歷序列構造二叉樹★★
    7.4.3  LeetCode889——根據先序和後序遍歷序列構造二叉樹★★
    7.4.4  LeetCode654——最大二叉樹★★
    7.4.5  LeetCode100——相同的樹★
    7.4.6  LeetCode572——另一棵樹的子樹★
  7.5  樹
    7.5.1  樹的存儲結構
    7.5.2  LeetCode589——N叉樹的先根遍歷★
    7.5.3  LeetCode429——N叉樹的層序遍歷★★
第8章  圖
  8.1  圖的基本應用
    8.1.1  圖的存儲結構
    8.1.2  LeetCode997——找到小鎮的法官★
    8.1.3  LeetCode1615——最大網路秩★★
  8.2  圖遍歷及其應用
    8.2.1  LeetCode200——島嶼數量★★
    8.2.2  LeetCode547——省份數量★★
    8.2.3  LeetCode785——判斷二分圖★★
    8.2.4  LeetCode130——被圍繞的區域★★
    8.2.5  LeetCode1091——二進位矩陣中的最短路徑★★
    8.2.6  LeetCode994——腐爛的橘子★★
    8.2.7  LeetCode542——01矩陣★★
    8.2.8  LeetCode934——最短的橋★★
    8.2.9  LeetCode797——所有可能的路徑★★
  8.3  最小生成樹
    8.3.1  LeetCode1584——連接所有點的最小費用★★
    8.3.2  LeetCode684——冗余連接★★
    8.3.3  LeetCode1631——最小體力消耗路徑★★
  8.4  最短路徑
    8.4.1  LeetCode743——網路延遲時間★★
    8.4.2  LeetCode1334——閾值距離內鄰居最少的城市★★
  8.5  拓撲排序
    8.5.1  LeetCode207——課程表★★

    8.5.2  LeetCode210——課程表Ⅱ★★
    8.5.3  LeetCode1462——課程表Ⅳ★★
第9章  查找
  9.1  二分查找及其應用
    9.1.1  LeetCode240——搜索二維矩陣Ⅱ★★
    9.1.2  LeetCode704——二分查找★
    9.1.3  LeetCode35——搜索插入位置★
    9.1.4  LeetCode34——在有序數組中查找元素的第一個和最後一個
位置★★
    9.1.5  LeetCode33——搜索旋轉有序數組★★
    9.1.6  LeetCode81——搜索旋轉有序數組Ⅱ★★
    9.1.7  LeetCode162——尋找峰值★★
    9.1.8  LeetCode4——尋找兩個正序數組的中位數★★★
  9.2  二叉排序樹及其應用
    9.2.1  LeetCode96——不同的二叉排序樹★★
    9.2.2  LeetCode95——不同的二叉排序樹Ⅱ★★
    9.2.3  LeetCode700——二叉排序樹中的搜索★
    9.2.4  LeetCode450——刪除二叉排序樹中的結點★
    9.2.5  LeetCode235——二叉排序樹的最近公共祖先★
    9.2.6  LeetCode98——驗證二叉排序樹★★
    9.2.7  LeetCode938——二叉排序樹的範圍和★
  9.3  平衡二叉樹及其應用
    9.3.1  STL中的map和set容器
    9.3.2  LeetCode110——平衡二叉樹★
    9.3.3  LeetCode1382——將二叉排序樹變平衡★★
    9.3.4  LeetCode826——安排工作以達到最大收益★★
    9.3.5  LeetCode414——第三大的數★
  9.4  哈希表及其應用
    9.4.1  STL中的unordered_map容器
    9.4.2  LeetCode705——設計哈希集合★
    9.4.3  LeetCode146——LRU緩存機制★★
    9.4.4  LeetCode215——數組中的第k個最大元素★★
    9.4.5  LeetCode380——以常數時間插入、刪除和獲取隨機元素★★
第10章  內排序
  10.1  基本排序方法
    10.1.1  LeetCode1528——重新排列字元串★
    10.1.2  LeetCode912——排序數組★★
  10.2  快速排序的應用
    10.2.1  STL中的sort()排序演算法
    10.2.2  LeetCode148——排序鏈表★★
    10.2.3  LeetCode922——按奇偶排序數組Ⅱ★
  10.3  二路歸併排序的應用
    10.3.1  LeetCode148——排序鏈表★★
    10.3.2  劍指Offer51——數組中的逆序對★★★
    10.3.3  LeetCode315——計算右側小於當前元素的個數★★★
    10.3.4  LeetCode493——翻轉對★★★
  10.4  堆(優先隊列)的應用
    10.4.1  STL中的priority_queue容器
    10.4.2  LeetCode973——最接近原點的k個點★★
    10.4.3  LeetCode295——數據流的中位數★★★

    10.4.4  LeetCode239——滑動窗口中的最大值★★★
  10.5  topk問題
    10.5.1  劍指Offer40——最小的k個數★
    10.5.2  LeetCode215——數組中的第k個最大元素★★
    10.5.3  LeetCode703——數據流中的第k大元素★
    10.5.4  LeetCode347——前k個高頻元素★★
  10.6  基數排序及其應用
    10.6.1  LeetCode75——顏色分類★★
    10.6.2  LeetCode164——最大間距★★★
附錄A  所有在線編程題目列表
附錄B  在線編程實驗報告示例

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032