总结
回溯算法要和递归结合起来就很好理解了 , 递归分为两部分 , 第一部分是先往下传递 , 第二部分到达终止条件的时候然后再反弹往回走 , 我们来看一下阶乘的递归
文章插图
其实回溯算法就是在往下传递的时候把某个值给改变 , 然后往回反弹的时候再把原来的值复原即可 。比如八皇后的时候我们先假设一个位置可以放皇后 , 如果走不通就把当前位置给撤销 , 放其他的位置 。如果是组合之类的问题 , 往下传递的时候我们把当前值加入到list中 , 然后往回反弹的时候在把它从list中给移除掉即可 。
查看更多算法题 , 可以关注我微信关注"数据结构和算法"
推荐阅读
- 客厅的颜色搭配有什么宜忌?
- 不同朝向住宅的客厅用什么颜色好?
- 客厅的屏风有什么风水用途?
- 浙江省什么时候成立的 杨家将的故事是由北宋将领
- 防止科举考试的的两大举措是什么时候发明的 古代科举舞弊
- 秦王为什么要杀郑国 秦穆公千里伐郑
- 李煜是怎么灭国的 李煜为什么被宋太宗毒死
- 项羽为什么没有在鸿门宴上杀了刘邦 鸿门宴中是谁背叛了项羽
- 金骏眉茶叶什么价格,金骏眉茶叶价格表
- 红茶不适合哪些人喝,安吉白茶适合什么人喝