递归、斐波拉契数列、快速排序、八皇后

不断进入和其再不断出来的过程;

一、斐波拉契数列

1、递归可以看成是树结构,复杂度是2的n次方

 

 2、斐波拉契数列,for循环求第n个数的值

 

 复杂度就是n,要循环n-2次;

3、递归求第n位的值

 

 复杂度是2^n,比for循环大很多;

二、遍历文件夹

 

 三、快速排序,分而治之

 

 1、里面两个while是满足条件抛完一次绣球,外面while是保证一直抛完所有绣球

 

 

 

 

 

 2、调用的方法中递归

 

 四、八皇后

1、需求分析

 

 递归往下是一层层的调用自己;其核心的在于底层往上面一层层的返回;

如果第四行放不了,则会返回到其上一行放皇后的地方,取消掉该皇后,继续往后遍历上一行重新放,然后再递归调用第四行;

最重要的在于下面返回时候取消皇后的操作;

2、代码实现

2.1检查和放皇后,就是int类型8*8数组某位置元素置为1;

 

 

 

 2.2递归算法

 

 

 

 核心代码:

 

posted @ 2019-10-20 22:54  wmqiang  阅读(177)  评论(0编辑  收藏  举报