Learning Algorithms: A Programmer's Guide to Writing Better Code

Heineman, George

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

商品描述

When it comes to writing efficient code, every software professional needs to have an effective working knowledge of algorithms. In this practical book, author George Heineman (Algorithms in a Nutshell) provides concise and informative descriptions of key algorithms that improve coding in multiple languages. Software developers, testers, and maintainers will discover how algorithms solve computational problems creatively.

Each chapter builds on earlier material through eye-catching visuals and a steady rollout of essential concepts, including an algorithm analysis to classify the performance of every algorithm presented in the book. At the end of each chapter, you'll get to apply what you've learned to a novel challenge problem--simulating the experience you might find in a technical code interview.

With this book, you will:

  • Examine fundamental algorithms central to computer science and software engineering
  • Learn common strategies for efficient problem solving--such as divide and conquer, dynamic programming, and greedy approaches
  • Analyze code to evaluate time complexity using big O notation
  • Use existing Python libraries and data structures to solve problems using algorithms
  • Understand the main steps of important algorithms

商品描述(中文翻譯)

在撰寫高效代碼方面,每位軟體專業人士都需要具備有效的演算法知識。在這本實用書中,作者 George Heineman(《演算法大全》)提供了簡潔且資訊豐富的關鍵演算法描述,可改善多種程式語言的編碼。軟體開發人員、測試人員和維護人員將發現演算法如何創造性地解決計算問題。

每個章節通過引人注目的視覺效果和基本概念的逐步介紹來建立前面的內容,包括對書中每個演算法的性能進行分類的演算法分析。在每個章節的結尾,您將有機會將所學應用於一個新的挑戰問題,這樣您就可以體驗到技術面試中可能遇到的情況。

通過這本書,您將能夠:
- 檢視計算機科學和軟體工程中的基本演算法
- 學習高效解決問題的常見策略,例如分治法、動態規劃和貪婪法
- 通過大O符號分析代碼以評估時間複雜度
- 使用現有的Python庫和資料結構來使用演算法解決問題
- 理解重要演算法的主要步驟

作者簡介

George Heineman is a professor of computer science with over twenty years of experience in software engineering and algorithms. He is the author of Algorithms in a Nutshell (2ed) and numerous Safari live training offerings, including Exploring Algorithms in Python and Working with Algorithms in Python. He has a lifelong interest in logical and mathematical puzzles. He is the inventor of Sujiken(R) puzzles, a variation of Sudoku, and Trexagon puzzles.

作者簡介(中文翻譯)

George Heineman是一位擁有超過二十年軟體工程和演算法經驗的電腦科學教授。他是《Algorithms in a Nutshell (2ed)》的作者,也是許多Safari線上培訓課程的提供者,包括《Exploring Algorithms in Python》和《Working with Algorithms in Python》。他一直對邏輯和數學謎題有著終身的興趣。他是Sujiken(R)謎題的發明者,這是一種Sudoku的變體,還有Trexagon謎題。