递归
递归相关知识题目
小郭今天学习了吗?
这个作者很懒,什么都没留下…
展开
-
八皇后问题
问题描述:在8*8格的国际象棋上摆放八个皇后,使其不能互相攻击,即:任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。思路:先在第一行第一个放一个皇后在第二行第一个放一个看攻不攻击,攻击的话放在第二行第二个以此类推放第三行的位置也是从第三行第一个位置开始放看合不合格,如果放完第三行所有的位置都不合格的话就回溯到第二行,把第二行的皇后放到下一个位置以此类推进行回溯第一行第一个是皇后的所有情况全部得到后,把第一行的皇后放在第一行的第二个位置继续上面的操作直到得到所有的情况;以此类推得原创 2021-04-28 19:56:21 · 80 阅读 · 0 评论 -
迷宫回溯问题
首先建立要用的迷宫假设是一个很简单的迷宫(八行七列)用二维数组来表示然后制定一定的策略来走迷宫,假设是从(1,1)点走到(6,5)点从第一个格子开始都是按照下->右->上->左的顺序走(这里注意采用的策略不同走的路径格子数也不同)同时注意格子数组值不同代表不同的涵义:0:没有走过1:墙2:走过了可以走得通3;走过了走不通下面的格子走得通的话就向下走,否则就看右面的格子能不能走通,否则。。以此类推直到走到目标位置package recursion;public cl原创 2021-04-27 20:10:57 · 61 阅读 · 0 评论 -
递归算法
首先我们介绍分治,递归采用了分治的思想。分治将复杂问题分割成规模和结构相同或相似的子问题,子问题还可以分解成更小的子子问题,直到分解的子问题是一些基本问题,分别解决这些子问题,最后合并子问题的解,即可得到原问题的解。分解解决合并分治法分解出来的子问题相互独立,没有交叉。递归通过自身调用自身或者间接调用自身,把问题范围缩小直到范围缩小到可以直接得到边界数据的结果,然后再在返回的路上求出对于的解。递归算法用到了栈,每递归调用一次原函数就把该函数与其对应参数压栈,直到对应参数到达边缘即可停止.原创 2021-04-25 21:45:42 · 54 阅读 · 0 评论