第9章 DS003.2 递归2.pptVIP

  • 17
  • 0
  • 约1.14万字
  • 约 40页
  • 2017-06-08 发布于湖北
  • 举报
13:53:16 堆栈与递归 《数据结构(C语言版)》 西安电子科技大学·理学院 唐厚俭 栈的基本操作 入栈(Push) 出栈(Pop) 取栈顶(Top) 堆栈的应用实例 数制转换: 迷宫求解 表达式求解 堆栈的实现 顺序栈 迷宫问题 穷举求解法: 从入口出发,沿8个方向挨个搜索, 若无路可走,则退回原路,否则, 继续向前走,直到到达目的点 两种操作 前进: 走到下一个地点,并开始尝试第一个可行方向 后退: 已经尝试了所有方向,但没有发现可以继续前进的路线 退回到上次所在位置, 并从上次没有尝试过的方向继续尝试 函数调用 函数的调用与返回过程 函数调用 调用函数前,系统完成: 将所有的实参、返回地址等传递给被调用函数 为被调用函数分配局部变量分配存储器 将控制转移到被调用函数的入口 被调用函数执行后,系统完成: 保存被调用函数的计算结果 释放被调用函数的数据区 依照被调用函数的返回地址将控制权转至调用函数 多个函数嵌套调用时 后调用先返回 调用堆栈 函数的调用与返回过程 递归函数 递归函数 一个函数直接或间接的调用自身的函数,称之为递归函数 递归函数执行过程 Fibonacci数列 Fibonacci数列 递归与数学归纳法 数学归纳法的思路是 证明对于简单的可以代入的数,定理成立; 假设定理对某一数k=N成立(或k=N的都成立) 证明定理对k=N+1也成立 设计递归程

文档评论(0)

1亿VIP精品文档

相关文档