编写递归代码时最重要的有以下三点。

  • 递归总有一个最简单的情况——方法的第一条语句总是一个包含return的条件语句。
  • 递归调用总是去尝试解决一个规模更小的子问题,这样递归才能收敛到最简单的情况。
  • 递归调用的父问题和尝试解决的子问题之间不应该有交集。

未被其中任意一条都可能得到错误的结果或是低效的代码,而坚持这些原则能写出清晰、正确且容易评估性能的程序。

results matching ""

    No results matching ""