从这里开始,本书将为您提供一些基础代码示例和解释。然后将列出几个不同的编程挑战,这些挑战是以下主题的组合:• 基础数据结构 • 使用哈希表 • 遍历数组 • 函数式编程 每个问题都会有一个解释,详细说明如何处理问题并找出一个高级解决方案,然后呈现一个工作的代码解决方案。有些挑战将从一个暴力解决方案开始,然后将慢慢修改成一个更高效的程序。所有的挑战都会有JavaScript、Python和Ruby的工作解决方案。
我的最终目标不是让您记住一系列常见挑战的解决方案。相反,我的目标是让您学会如何处理编程挑战,以便您能够弄清楚它们在问什么,以及您需要什么数据结构和算法来解决它们。真正学会编写问题的解决方案需要时间、练习和对您所使用的编程语言的良好掌握。在本书中,我希望教给您大多数编程挑战之间的共同主题,并向您展示如何使用特定的数据结构和算法来解决几乎每一个挑战。