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

演算法圖解(第2版)/圖靈程序設計叢書

  • 作者:(美)阿迪蒂亞·Y.巴爾加瓦|責編:張衛國|譯者:袁國忠
  • 出版社:人民郵電
  • ISBN:9787115649706
  • 出版日期:2024/09/01
  • 裝幀:平裝
  • 頁數:235
人民幣:RMB 69.8 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書示例豐富,圖文並茂,以簡明易懂的方式闡釋了演算法,旨在幫助程序員在日常項目中更好地利用演算法為軟體開發助力。前三章介紹演算法基礎,包括二分查找、大O表示法、兩種基本的數據結構以及遞歸等。餘下的篇幅主要介紹應用廣泛的演算法,具體內容包括:面對具體問題時的解決技巧,比如何時採用分而治之、貪婪演算法或動態規劃,哈希表的應用,圖和樹演算法,K最近鄰演算法等。這一版將示例代碼更新到了Python 3,並新增了兩章專門討論樹,加之諸多修訂,使得內容更加完善。
    本書適合程序員、電腦專業相關師生以及對演算法感興趣的讀者閱讀。

作者介紹
(美)阿迪蒂亞·Y.巴爾加瓦|責編:張衛國|譯者:袁國忠
    阿迪蒂亞·Y.巴爾加瓦,Rula高級軟體工程師,擁有芝加哥大學電腦科學碩士學位,還在adit.io撰寫技術博客。

目錄
第1章  演算法簡介
  1.1  引言
    1.1.1  性能方面
    1.1.2  問題解決技巧
  1.2  二分查找
    1.2.1  更佳的查找方式
    1.2.2  運行時間
  1.3  大O表示法
    1.3.1  演算法的運行時間以不同的速度增加
    1.3.2  理解不同的大O運行時間
    1.3.3  大O表示法指出了最糟情況下的運行時間
    1.3.4  一些常見的大O運行時間
    1.3.5  旅行商
  1.4  小結
第2章  選擇排序
  2.1  內存的工作原理
  2.2  數組和鏈表
    2.2.1  鏈表
    2.2.2  數組
    2.2.3  術語
    2.2.4  在中間插入
    2.2.5  刪除
    2.2.6  數組和鏈表哪個用得更多
  2.3  選擇排序
  2.4  小結
第3章  遞歸
  3.1  遞歸
  3.2  基線條件和遞歸條件
  3.3  棧
    3.3.1  調用棧
    3.3.2  遞歸調用棧
  3.4  小結
第4章  快速排序
  4.1  分而治之
  4.2  快速排序
  4.3  再談大O表示法
    4.3.1  比較合併排序和快速排序
    4.3.2  平均情況和最糟情況
  4.4  小結
第5章  散列表
  5.1  散列函數
  5.2  應用案例
    5.2.1  將散列表用於查找
    5.2.2  防止重複
    5.2.3  將散列表用作緩存
    5.2.4  小結
  5.3  衝突
  5.4  性能
    5.4.1  填裝因子
    5.4.2  良好的散列函數

  5.5  小結
第6章  廣度優先搜索
  6.1  圖簡介
  6.2  圖是什麼
  6.3  廣度優先搜索
    6.3.1  查找最短路徑
    6.3.2  隊列
  6.4  實現圖
  6.5  實現演算法
  6.6  小結
第7章  樹
  7.1  樹簡介
  7.2  太空漫遊:深度優先搜索
  7.3  二叉樹
  7.4  霍夫曼編碼
  7.5  小結
第8章  平衡樹
  8.1  平衡措施
  8.2  樹越矮,速度越快
  8.3  AVL樹——一種平衡樹
    8.3.1  旋轉
    8.3.2  AVL樹如何把握旋轉時機
  8.4  伸展樹
  8.5  B樹
  8.6  小結
第9章  迪傑斯特拉演算法
  9.1  使用迪傑斯特拉演算法
  9.2  術語
  9.3  換鋼琴
  9.4  負權邊
  9.5  實現
  9.6  小結
第10章  貪婪演算法
  10.1  教室調度問題
  10.2  背包問題
  10.3  集合覆蓋問題
  10.4  小結
第11章  動態規劃
  11.1  再談背包問題
    11.1.1  簡單演算法
    11.1.2  動態規劃
  11.2  背包問題FAQ
    11.2.1  再增加一件商品將如何呢
    11.2.2  行的排列順序發生變化時結果將如何
    11.2.3  可以逐列而不是逐行填充網格嗎
    11.2.4  增加一件更小的商品將如何呢
    11.2.5  可以拿商品的一部分嗎
    11.2.6  旅遊行程最優化
    11.2.7  處理相互依賴的情況
    11.2.8  計算最終的解時會涉及兩個以上的子背包嗎

    11.2.9  最優解可能導致背包沒裝滿嗎
  11.3  最長公共子串
    11.3.1  繪製網格
    11.3.2  填充網格
    11.3.3  揭曉答案
    11.3.4  最長公共子序列
    11.3.5  最長公共子序列之解決方案
  11.4  小結
第12章  K最近鄰演算法
  12.1  橙子還是柚子
  12.2  創建推薦系統
    12.2.1  特徵提取
    12.2.2  回歸
    12.2.3  挑選合適的特徵
  12.3  機器學習簡介
    12.3.1  OCR
    12.3.2  創建垃圾郵件過濾器
    12.3.3  預測股票市場
  12.4  機器學習模型訓練概述
  12.5  小結
第13章  接下來如何做
  13.1  線性回歸
  13.2  反向索引
  13.3  傅里葉變換
  13.4  並行演算法
  13.5  映射/歸併
  13.6  布隆過濾器和HyperLogLog
    13.6.1  布隆過濾器
    13.6.2  HyperLogLog
  13.7  HTTPS和迪菲-赫爾曼密鑰交換演算法
  13.8  局部敏感的散列演算法
  13.9  最小堆和優先順序隊列
  13.10  線性規劃
  13.11  結語
附錄A  AVL樹的性能
附錄B  NP-hard問題
附錄C  練習答案

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們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