Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques. * The book deals with some of the most important and challenging areas of programming and c...
Python Algorithms explains the Python approach to algorithm analysis and design. Written by Magnus Lie Hetland, author of Beginning Python, this book is sharply focused on classical algorithms, but it also gives a solid understanding of fundamental algorithmic problem-solving techniques. * The book deals with some of the most important and challenging areas of programming and computer science, but in a highly pedagogic and readable manner. * The book covers both algorithmic theory and programming practice, demonstrating how theory is reflected in real Python programs. * Well-known algorithms and data structures that are built into the Python language are explained, and the user is shown how to implement and evaluate others himself. What you'll learn * Transform new problems to well-known algorithmic problems with efficient solutions, or show that the problems belong to classes of problems thought not to be efficiently solvable. * Analyze algorithms and Python programs both using mathematical tools and basic experiments and benchmarks. * Prove correctness, optimality, or bounds on approximation error for Python programs and their underlying algorithms. * Understand several classical algorithms and data structures in depth, and be able to implement these efficiently in Python. * Design and implement new algorithms for new problems, using time-tested design principles and techniques. * Speed up implementations, using a plethora of tools for high-performance computing in Python. Who this book is for The book is intended for Python programmers who need to learn about algorithmic problem-solving, or who need a refresher. Students of computer science, or similar programming-related topics, such as bioinformatics, may also find the book to be quite useful. Table of Contents * Introduction * The Basics * Counting 101 * Induction and Recursion ...and Reduction * Traversal: The Skeleton Key of Algorithmics * Divide, Combine, and Conquer * Greed Is Good? Prove It! * Tangled Dependencies and Memoization * From A to B with Edsger and Friends * Matchings, Cuts, and Flows * Hard Problems and (Limited) Sloppiness
In a
way, algorithm design can be seen as a way of achieving low asymptotic running time (by designing
efficient algorithms), while algorithm engineering is focused on reducing the hidden constants in that
asymptotic complexity (查看原文)
算法设计篇主要是阅读[Python Algorithms: Mastering Basic Algorithms in the Python Language](http://link.springer.com/book/10.1007%2F978-1-4302-3238-4)[**点击链接可进入Springer下载原书电子版**]之后写下的读书总结,原书大部分内容结合了经典书籍[算法导论](http://...
(展开)
比如第二章习题2-11,证明对于任意无向图,都可以通过调整边线方向,从中产生有向无环图(DAG),原文答案是这样的:"Number the nodes (arbitrarily). Orient all edges from lower to higher numbers." ,然后书上翻译成:“(任何一种)节点编号都可以按照其所有边的编号从...
(展开)
0 有用 Henry 2022-10-09 14:06:57 美国
众人推荐
7 有用 O(1) 的小乐 2012-11-22 20:34:38
比较基础,但是给出了Python 实现算法中的一些trick技巧。很多算法的技巧或者直观性的东西,还是读Algorithm Design或者MIT的那本吧。总之,缺少深度或者一些算法启发性的点的描述是硬伤。不多对与特定用Python讲的不能要求再多了
0 有用 齐物君 2018-06-18 13:02:08
hard的部分没有看,接着读第三遍.
2 有用 stephansun 2014-02-06 10:40:07
叫 算法设计 或许更合适
0 有用 iphyer 2014-01-30 15:08:45
简单来说就是教你怎么用Python实现算法导论和数据结构课的算法部分,不得不说Python是神器!