
本网站不提供下载链接,喜欢看书的朋友请关注公众号:【lennylee的碎碎念】(lennyleede),首页回复:授人以渔,自动获取搜索资源的方法。
内容简介:
Essential Information about Algorithms and Data Structures A Classic Reference The latest version of Sedgewick,s best-selling series, reflecting an indispensable body of knowledge developed over the past several decades. Broad Coverage Full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing, including fifty algorithms every programmer should know. See
作者简介:
Robert Sedgewick
斯坦福大学博士(导师是Donald E. Knuth),从1985年开始一直担任普林斯顿大学计算机科学系教授,曾任该系主任,也是Adobe Systems公司董事会成员,曾在Xerox PARC、国防分析研究所(Institute for Defense Analyses)和法国国家信息与自动化研究所(INRIA)从事研究工作。他的研究方向包括解析组合学、数据结构和算法的分析与设计、程序可视化等。
Kevin Wayne
康奈尔大学博士,普林斯顿大学计算机科学系高级讲师。研究方向包括算法的设计、分析和实现,特别是图和离散优化。
原文摘录:
编写递归代码时最重要的有以下三点:
* 递归总有一个最简单的情况——方法的第一条语句总是一个包含 return 的条件语句。
* 递归调用总是去尝试解决一个规模更小的子问题,这样递归慈恩那个收敛到最简单的情况。
* 递归调用的父问题和尝试解决的子问题之间不应该有交集。 (查看原文)
豆友152905485
2赞
2022-11-21 13:32:38
—— 引自章节:1.1.6 静态方法 12
你应该将自己编写的每一个程序都当做一个日后可以重用的库。
* 编写用例,在实现中将计算过程分解成可控的部分。
* 明确静态方法库和与之对应的API(或者多个库的多个API)。
* 实现API和一个能够对方法进行独立测试的 main() 函数。
这种方法不仅能帮助你实现可重用的代码,而且能够教会你如何运用模块化编程来解决一个复杂的问题。
API 的目的是将调用和实现分离:除了API中给出的信息,调用者不需要知道实现的其他细节,而实现也不应考虑特殊的应用场景。API使我们能够广泛地重用那些为各种目的独立开发的代码。 (查看原文)
豆友152905485
2赞
2022-11-21 13:53:01
—— 引自章节:1.1.7 API 16