zoukankan      html  css  js  c++  java
  • 递归

    一、递归的思想:

    就是把规模大的问题转化为规模小的相似的子问题来解决。在函数实现时,因为解决大问题的方法和解决小问题的方法往往是同一个方法,所以就产生了函数调用它自身的情况。另外这个解决问题的函数必须有明显的结束条件,这样就不会产生无限递归的情况了。

    二、递归的条件:

    1、可以通过递归调用来缩小问题规模,且新问题与原问题有着相同的形式。(自身调用)

    2、存在一种简单情境,可以使递归在简单情境下退出。(递归出口)

    三、递归的要素:

    1、一定有一种可以退出程序的情况;

    2、总是在尝试将一个问题化简到更小的规模

    3、父问题与子问题不能有重叠的部分

    四、递归算法的格式:

    func( mode){

        if(endCondition){      //递归出口          end;

        }else{

             func(mode_small)  //调用本身,递归    }

    }

    五、递归的排序:

    归并排序也是递归的典型应用,其思想:将序列分为若干有序序列(开始为单个记录),两个相邻有序的序列合并成一个有序的序列,以此类推,直到整个序列有序。

  • 相关阅读:
    声明函数的是方式
    数组的相关属性和函数
    JS选择结构
    JS数据类型
    JS 运算符
    JS 变量
    响应式布局
    css的flex属性
    CSS中的度量单位
    BFC 规则
  • 原文地址:https://www.cnblogs.com/yhcTACK/p/15431425.html
Copyright © 2011-2022 走看看