3递归算法.pptVIP

  • 18
  • 0
  • 约7.04千字
  • 约 49页
  • 2016-11-28 发布于河南
  • 举报
3递归算法

递归算法(Recursion) 本章内容 递归算法的实现机制 递归化为非递归(难点) 递归算法举例 递归算法复杂性的计算(重点和难点) 递归(Recursion)定义 直接或间接地调用自身的算法称为递归算法 直接或间接调用自身的函数称为递归函数 尾递归是指递归调用的语句在递归函数的最后一句 递归算法的特点: 用于解决一类递归定义的问题 算法易于实现,简单明了 1.递归算法的实现机制 递归算法通过子程序/函数来实现 子程序调用的形式 参数传递和返回值的传送 子程序调用的内部操作 1.1 子程序的调用形式 子程序/函数调用形式 关键: 用栈保存返回地址 用寄存器保存返回地址(某些嵌入式处理器) 1.2参数传递和返回值的回传 参数传递 按值的传送(值调用) 按地址的传送(引用调用) 两次值的传送 地址的传送 函数的返回值 通过寄存器传递(AX/EAX) 通过全局变量的传送 例如 C++中的引用类型,一些脚本语言的引用变量类型都是按地址传送的例子 参数的传递 值参数 (value parameter) 用于输入参数的传递。一个值参数相当于一个局部变量,只是它的初始值来自为该形参传递的实参。对值参数的修改不影响为该形参传递的实参。 引用参数 (reference parameter) 用于输入和输出参数传递。引用参数与实参变量表示同一存储位置,对值参数的修改直接影响为该形参传递的实参。

文档评论(0)

1亿VIP精品文档

相关文档