高教社课件Python程序设计及应用(第2版)第10章.pptxVIP

  • 1
  • 0
  • 约小于1千字
  • 约 34页
  • 2026-09-06 发布于广东
  • 举报

高教社课件Python程序设计及应用(第2版)第10章.pptx

;1.初识递归;阿凡提与国王下棋问赏时说:只要给的麦粒填满64个棋盘格子就行。

规则是:第1格1粒、第2格2粒、第3格4粒,以后每格依次是前1格加1倍。

即:g(1)=1、g(2)=2、g(3)=4、…..、g(n)=2*g(n-1)

;递归调用有两种:

在函数f中直接调用函数f

;例阶乘;递归函数;4.典型递归类型;(1)问题定义是递归的;;(2)数据结构是递归的;(3)问题的解法是递归的;例:“世界末日问题”著名的汉诺塔问题

要求:有两个柱A、C,A上有64个从大到小排列的金盘,

要将A上的盘移动到C;

规则:.每次移动1个;

任何时候大的在下,小的在上;

可借助B柱。

;求解的思路:;Hanoi(n,A,B,C;递归函数;二、如何设计递归函数;递归函数;递归的原理:栈实现函数调用;构成递归的两大要素;迭代:1!=12!=2*1!3!=3*2!,…,自底向顶的计算,效率高,符合计算机方式

递归:n!=n*(n-1)!=n*(n-1)*(n-2)!,…,

递推:自顶向底逐步分解问题

回归:自底向顶计算;3.设计递归函数;递归模式;三、典型应用案例;三步来实现:问

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档