《 Python算法指南——程式設計師經典算法分析與實現》是清華大學出版社2019年出版的圖書,作者 李永華。
基本介紹
- 書名:Python算法指南——程式設計師經典算法分析與實現
- 作者:李永華
- ISBN:9787302531357
- 定價:119元
- 出版社:清華大學出版社
- 出版時間:2019年8月1日
- 印次:1-1
- 印刷日期:2019年8月23日
內容簡介,目錄,
內容簡介
本書以人工智慧發展為時代背景,通過實際案例套用描述算法,提供了較為詳細的實戰方案,以便深度學習。本書內容從算法上分為數學、搜尋、回溯、遞歸、排序、疊代、貪心、分治和動態規劃等; 從數據結構上分為字元串、數組、指針、區間、佇列、矩陣、堆疊、鍊表、哈希表、線段樹、二叉樹、二叉搜尋樹和圖結構等。本書針對經典算法,結合相關的數據結構,將描述問題、問題示例、代碼實現以及運行結果相結合,語言簡潔,深入淺出,通俗易懂,不僅適合對Python編程有興趣的科研人員,也適合作為高等院校的參考教材。
目錄
例1完美平方
例2判斷平方數
例3檢測2的冪次
例4求平方根
例5x的n次冪
例6快速冪
例7四數乘積
例8將整數A轉換為B
例9羅馬數字轉換為整數
例10整數轉換為羅馬數字
例11整數排序
例12整數替換
例13兩個整數相除
例14整數加法
例15合併數字
例16數字判斷
例17下一個稀疏數
例18滑動視窗的最大值
例19創建最大數
例20最接近的k個數
例21交錯正負數
例22下一個更大的數
例23落單的數Ⅰ
例24落單的數Ⅱ
例25落單的數Ⅲ
例26落單的數Ⅳ
例27對稱數
例28鏡像數字
例29統計比給定整數小的數
例30統計前面比自己小的數
例31階乘尾部零的個數
例32統計數字
例33刪除數字
例34尋找丟失的數
例35醜數Ⅰ
例36醜數Ⅱ
例37超級醜數
例38兩數之和Ⅰ
例39兩數之和Ⅱ
例40兩數之和Ⅲ
例41最接近的三數之和
例42三數之和為零
例43四數之和為定值
例44骰子求和
例45k數之和
例46二進制求和
例47各位相加
例48矩陣元素ZigZag返回
例49子矩陣和為零
例50搜尋二維矩陣Ⅰ
例51搜尋二維矩陣Ⅱ
例52矩陣歸零
例53DNA重複問題
例54螺旋矩陣
例55矩陣走路問題
例56稀疏矩陣乘法
例57直方圖中最大的矩形面積
例58最大矩形
例59排序矩陣中的從小到大第k個數
例60最大和子數組
例61兩個不重疊子數組最大和
例62k個不重疊子數組最大和
例63兩個不重疊的子數組最大差
例64兩數組的交集Ⅰ
例65兩數組的交集Ⅱ
例66乘積小於k的子數組
例67最小和子數組
例68連續子數組最大和
例69子數組之和為零
例70數組劃分
例71數組中的kdiff對的數量
例72刪除排序數組中的重複數字
例73和大於定值的最小長度子數組
例74最大平均值子數組
例75搜尋旋轉排序數組中的最小值Ⅰ
例76搜尋旋轉排序數組中的最小值Ⅱ
例77搜尋旋轉排序數組目標值Ⅰ
例78搜尋旋轉排序數組目標值Ⅱ
例79和最接近零的子數組
例80兩個整數數組的最小差
例81數組中的相同數字
例82翻轉數組
例83奇偶分割數組
例84判斷字元串中的重複字元
例85最長無重複字元的子字元串
例86最長回文子字元串
例87將字元串轉換為整數
例88字元串查找
例89子字元串的判斷
例90翻轉字元串中的單詞
例91亂序字元串
例92比較字元串
例93攀爬字元串
例94交叉字元串
例95字元串解碼
例96最小子字元串覆蓋
例97連線兩個字元串中的不同字元
例98字元串加法
例99字元串乘法
例100前k個偶數長度的迴文數之和
例101分割回文串Ⅰ
例102分割回文串Ⅱ
例103回文排列Ⅰ
例104回文排列Ⅱ
例105回文鍊表
例106有效回文串
例107回文對
例108字模式
例109k組翻轉鍊表
例110刪除排序鍊表中的重複元素Ⅰ
例111刪除排序鍊表中的重複元素Ⅱ
例112鍊表劃分
例113翻轉鍊表Ⅰ
例114翻轉鍊表Ⅱ
例115旋轉鍊表
例116兩兩交換鍊表中的節點
例117刪除鍊表中的元素
例118重排鍊表
例119鍊表插入排序
例120合併k個排序鍊表
例121帶環鍊表
例122帶環鍊表轉換
例123刪除鍊表中倒數第n個節點
例124鍊表排序
例125加1鍊表
例126交換鍊表中的兩個節點
例127線段樹的修改
例128線段樹的構造Ⅰ
例129線段樹的構造Ⅱ
例130線段樹查詢Ⅰ
例131線段樹查詢Ⅱ
例132是否為子樹
例133最小子樹
例134具有最大平均數的子樹
例135二叉搜尋樹中最接近的值
例136二叉搜尋樹中插入節點
例137二叉搜尋樹中刪除節點
例138二叉搜尋樹轉化成更大的樹
例139二叉搜尋樹的搜尋區間
例140二叉搜尋樹的中序後繼
例141二叉搜尋樹兩數之和
例142裁剪二叉搜尋樹
例143統計完全二叉樹節點數
例144二叉搜尋樹疊代器
例145翻轉二叉樹
例146相同二叉樹
例147前序遍歷樹和中序遍歷樹構造二叉樹
例148二叉樹的後序遍歷
例149二叉樹的所有路徑
例150中序遍歷樹和後序遍歷樹構造二叉樹
例151二叉樹的序列化和反序列化
例152二叉樹的層次遍歷Ⅰ
例153二叉樹的層次遍歷Ⅱ
例154二叉樹的鋸齒形層次遍歷
例155尋找二叉樹葉子節點
例156平衡二叉樹
例157二叉樹中的最大路徑和
例158驗證二叉查找樹
例159二叉樹的最大深度
例160二叉樹的前序遍歷
例161二叉樹的中序遍歷
例162將排序列錶轉換成二叉搜尋樹
例163二叉樹的最小深度
例164不同的二叉搜尋樹
例165將二叉樹拆成鍊表
例166排序數組轉為高度最小二叉搜尋樹
例167最近二叉搜尋樹值Ⅰ
例168最近二叉搜尋樹值Ⅱ
例169買賣股票的最佳時機Ⅰ
例170買賣股票的最佳時機Ⅱ
例171買賣股票的最佳時機Ⅲ
例172主元素Ⅰ
例173主元素Ⅱ
例174第k大元素
例175滑動視窗內唯一元素數量和
例176單詞拆分Ⅰ
例177單詞拆分Ⅱ
例178單詞矩陣
例179單詞搜尋
例180單詞接龍Ⅰ
例181單詞接龍Ⅱ
例182包含所有單詞連線的子串
例183最後一個單詞的長度
例184電話號碼的字母組合
例185會議室Ⅰ
例186會議室Ⅱ
例187區間最小數
例188搜尋區間
例189無重疊區間
例190區間合併
例191區間求和Ⅰ
例192區間求和Ⅱ
例193是否為子序列
例194最長上升子序列
例195有效的括弧序列
例196對稱樹
例197圖是否為樹
例198表達樹的構造
例199表達式求值
例200逆波蘭表達式求值
例201將表達式轉換為逆波蘭表達式
例202最長公共子序列
例203乘積最大子序列
例204最長上升連續子序列
例205序列重構
例206不同的子序列
例207跳躍遊戲Ⅰ
例208跳躍遊戲Ⅱ
例209翻轉遊戲
例210棒球遊戲
例211中位數
例212滑動視窗的中位數
例213數據流中位數
例214兩個排序數組的中位數
例215打劫房屋Ⅰ
例216打劫房屋Ⅱ
例217子集Ⅰ
例218子集Ⅱ
例219迷宮Ⅰ
例220迷宮Ⅱ
例221迷宮Ⅲ
例222迷宮Ⅳ
例223數字組合Ⅰ
例224數字組合Ⅱ
例225數字組合Ⅲ
例226擺動排序問題
例227多關鍵字排序
例228排顏色
例229顏色分類
例230簡化路徑
例231不同的路徑Ⅰ
例232不同的路徑Ⅱ
例233換硬幣
例234硬幣擺放
例235硬幣排成線Ⅰ
例236硬幣排成線Ⅱ
例237搜尋插入位置
例238俄羅斯套娃信封
例239包裹黑色像素點的最小矩形
例240薪水調整
例241木材加工
例242判斷數獨是否合法
例243移除多餘字元
例244三元式解析器
例245符號串生成器
例246用棧實現佇列
例247用棧模擬漢諾塔問題
例248帶最小值操作的棧
例249恢復旋轉排序數組問題
例250移動零問題
例251丟失的間隔問題
例252三個數的最大乘積
例253用循環數組來實現佇列
例254尋找數據錯誤
例255數據流中第一個獨特數
例256數據流中第一個唯一的數字
例257二進制中有多少個1
例258找到映射序列
例259旋轉圖像
例260相反的順序存儲
例261太平洋和大西洋的水流
例262不同島嶼的個數
例263島的周長問題
例264數字三角形
例265最大正方形
例266最大關聯集合
例267合併k個排序間隔列表
例268合併賬戶
例269集合合併
例270快樂數判斷
例271最多有多少個點在一條直線上
例272尋找峰值
例273電燈切換
例274第k個質數
例275最小調整代價
例276背包問題
例277爬樓梯
例278被圍繞的區域
例279編輯距離
例280最大間距
例281堆化操作
例282外輪廓線
例283格雷編碼
例284能否到達終點
例285恢復IP位址
例286斐波納契數列
例287最長公共前綴
例288解碼方法
例289吹氣球
例290生成括弧
例291正則表達式匹配
例292分割標籤
例293裝最多水的容器
例294接雨水
例295加油站
例296分糖果
例297建立郵局
例298尋找最便宜的航行旅途
例299UTF8編碼檢查
例300哈希函式