演算法學習手冊|寫出更有效率的程式 (Learning Algorithms: A Programmer's Guide to Writing Better Code)
George T. Heineman 著 陳仁和 譯
- 出版商: 歐萊禮
- 出版日期: 2022-06-17
- 定價: $580
- 售價: 7.9 折 $458
- 語言: 繁體中文
- 頁數: 264
- 裝訂: 平裝
- ISBN: 6263241748
- ISBN-13: 9786263241749
-
相關分類:
Algorithms-data-structures
- 此書翻譯自: Learning Algorithms: A Programmer's Guide to Writing Better Code
立即出貨 (庫存 > 10)
買這商品的人也買了...
-
領域驅動設計:軟體核心複雜度的解決方法 (Domain-Driven Design: Tackling Complexity in the Heart of Software)$680$530 -
重構|改善既有程式的設計, 2/e (繁中平裝版)(Refactoring: Improving The Design of Existing Code, 2/e)$800$632 -
The Pragmatic Programmer 20週年紀念版 (The Pragmatic Programmer, 20th Anniversary Edition)$680$537 -
提升程式設計師的面試力|189道面試題目與解答, 6/e (修訂版) (Cracking the Coding Interview : 189 Programming Questions and Solutions, 6/e)$980$774 -
軟體架構原理|工程方法 (Fundamentals of Software Architecture: A Comprehensive Guide to Patterns, Characteristics, and Best Practices)$680$537 -
白話演算法!培養程式設計的邏輯思考 (Grokking Algorithms: An illustrated guide for programmers and other curious people)$520$468 -
深入淺出設計模式, 2/e (Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software, 2/e)$980$774 -
演算法戰鬥營:爆量題庫新手燒腦篇$880$695 -
JavaScript 多執行緒|超越事件迴圈的並行 (Multithreaded JavaScript)$580$458 -
演算法洞見:遞推與遞迴$600$468 -
動手學 GitHub!現代人不能不知道的協同合作平台$600$510 -
C 最強入門邁向頂尖高手之路王者歸來 (單色印刷)$620$490 -
Keras 大神歸位:深度學習全面進化!用 Python 實作 CNN、RNN、GRU、LSTM、GAN、VAE、Transformer$1,200$948 -
Linux 指令大全:工程師活用命令列技巧的常備工具書 (全新升級版) (The Linux Command Line : A Complete Introduction, 2/e)$780$663 -
Good Code, Bad Code|寫出高品質的程式碼 (Good Code, Bad Code: Think Like a Software Engineer)$520$411 -
Linux 錦囊妙計|基礎操作x系統與網路管理, 2/e (Linux Cookbook: Essential Skills for Linux Users and System & Network Administrators, 2/e)$780$616 -
軟體架構:困難部分 (Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures)$780$616 -
Clean Architecture 實作篇:在整潔的架構上弄髒你的手 (Get Your Hands Dirty on Clean Architecture)$500$390 -
Rust 程式設計, 2/e (Programming Rust: Fast, Safe Systems Development, 2/e)$1,200$948 -
Test-Driven Development 學習手冊$580$458 -
Web API 設計原則|API 與微服務傳遞價值之道 (Principles of Web API Design: Delivering Value with APIs and Microservices)$520$411 -
無瑕的程式碼 敏捷篇:還原敏捷真實的面貌 (Clean Agile : Back to Basics)$560$437 -
會動的演算法:61 個演算法動畫+全圖解逐步拆解,人工智慧、資料分析必備$620$490 -
Google 的軟體工程之道|從程式設計經驗中吸取教訓 (Software Engineering at Google)$880$695 -
大話設計模式:JAVA 風雲再起彩色加強版$880$695
相關主題
商品描述
「一本平易近人的著作,可讓你立即應用進而提升程式的執行效率。書中將教你電腦科學中會用到的基本演算法和資料型別。如果你正在找一份程式設計相關的技術工作,這本書可能會在下次的程式面試中幫助你取得好成績。」
— Zvi Galil
喬治亞理工學院
計算學院Frederick G. Storey主任暨名譽院長
論及撰寫有效率的程式時,每位軟體專業人士都需要具備有效率的演算法運作知識。在這本實務書籍中,《Algorithms in a Nutshell》作者George Heineman對於多種語言編寫程式時所用的效能改進關鍵演算法,有簡潔而詳實的介紹。軟體開發人員、測試人員、維護人員將理解演算法如何創造性地解決運算問題。
每章都會以前面章節內容為基礎,藉由清晰的圖示和不斷提供的新基本概念,包括演算法分析,對書中介紹的每個演算法做效能分級。你可以將每章所學到的內容,應用到該章最後的挑戰題中,如同模擬在程式術科面試場上的體驗。
閱讀本書,你將可以:
‧探索電腦科學和軟體工程核心的基本演算法
‧學習有效率解決問題的常見策略,例如:分治法、動態規劃、貪婪方法
‧使用Big-O分析與評估程式的時間複雜度
‧使用現有的Python函式庫和資料結構來解決演算法問題
‧了解重要演算法的主要步驟
作者簡介
George Heineman 是電腦科學教授,在軟體工程和演算法方面具有20年以上的經驗。他是《Algorithms in a Nutshell》(第2版)作者以及O'Reilly多門直播訓練課程講師(包括Exploring Algorithms in Python、Working with Algorithms in Python)。George是Sujiken謎題(數獨的變化版)與Trexagon謎題發明者。
目錄大綱
第一章 解決問題
何謂演算法?
找出任一串列的最大值
計數關鍵作業
能夠預測演算法效能的模型
找出任一串列的前兩大值
錦標賽演算法
時間複雜度與空間複雜度
本章總結
挑戰題
第二章 演算法分析
以實證模型預測效能
更快的乘法
效能等級
漸近分析
計數所有作業
計數所有位元組
命運之門
二元陣列搜尋
跟π一樣簡單
一舉兩得
整體而言
曲線配適與上限下限
本章總結
挑戰題
第三章 用好雜湊過好生活
值與鍵的關聯
雜湊函式與雜湊值
(鍵, 值)組的雜湊表結構
以線性探測察覺與解決衝突
分別鏈結的鏈結串列
移除鏈結串列的項目
評估
擴充雜湊表
動態雜湊表的效能分析
完美雜湊
疊代處理(鍵, 值)組
本章總結
挑戰題
第四章 堆積向上
最大二元堆積
插入(值, 優先序)
移除優先序最高的值
以陣列表示二元堆積
swim與sink的實作
本章總結
挑戰題
第五章 無魔法的奇妙排序
用交換做排序
選擇排序
二次等級排序演算法的剖析
插入排序與選擇排序的效能分析
遞迴與分治法
合併排序
快速排序
堆積排序
O(N log N)等級演算法的效能比較
Tim 排序
本章總結
挑戰題
第六章 二元樹∼掌握無限
開場
二元搜尋樹
搜尋二元搜尋樹內容值
移除二元搜尋樹內容值
遍歷二元搜尋樹
二元搜尋樹的效能分析
自平衡二元搜尋樹
自平衡二元樹的效能分析
以二元樹實作(鍵, 值)符號表
以二元樹實作優先佇列
本章總結
挑戰題
第七章 圖∼盡在連結
有效率的以圖儲存有用資訊
以深度優先搜尋解開迷宮
採取不同策略的廣度優先搜尋
有向圖
具邊權重的圖
Dijkstra演算法
全點對最短路徑
Floyd-Warshall演算法
本章總結
挑戰題
第八章 本書總結
Python內建資料結構
以Python實作堆疊
以Python實作佇列
堆積與優先佇列的實作
後續的探索









