递归思想和搜索算法
数模组费鹏
递归
谜跟想和搜索法
接或间接地调用该函数
1题成为数的臊度优先搜索「广度优先搜
如定义
深度搜索定义
深搜过程
通归的 ht fun(intn
mt
semameogmalon if
米fun(n-1)
return t
考虑一下刚才那个函数的运行过程
以起始n为5为例
有fun(5)调用fun(4),fun(4)调用fun(3)…,直到n=1为止
然后依次向上一层返回值。
t=5*fun(4)
t-3*fun(2)
120输出2
出6输出入
输出1
t=4*un(3
t=2*un(1)
考虑若在 return语句前加入 pr intf(“%d”,t),会有怎
么的输出结果
为什么能用递归解决这个问题?
阶乘问题可以分解为规模更小的子问题,用同样的方法可以解子问题
可以很容易的得到关于阶乘问题的递归公式
n!
n*(n-1)!,n
考虑一个新问题
现在有n个苹果和m个盘子,把这些苹果都放到盘子里,可以有盘
子里一个苹果也不放,有多少种摆放方法。
介绍几种数据结构
栈:限定仅只能在末端进行插入和删除的线性表
栈顶:允许插入和删除的一端
栈底:不允许插入和删除的一端。
时间有序表:先进后出(FLO)/后进先出(LF)
退栈
进栈
(弹出)
(压入)
〓n-2
a
bottom→ao
2章线性表
递归与搜索算法 来自淘豆网m.daumloan.com转载请标明出处.