递归的几种形式 您所在的位置:网站首页 摘要有几种形式 递归的几种形式

递归的几种形式

2024-07-14 17:41| 来源: 网络整理| 查看: 265

递归的几种形式

文章目录 递归的几种形式 前言 一、递归是什么? 二、递归三要素: 三、递归算法编程模型 应用 总结##

前言

: 一直觉得递归很难理解,刚学的时候总分不清怎么调用,在这里为大家分享下我学习递归时的笔力

一、递归是什么?

递归是指在函数 的定义中使用函数自身的方法 递归问题必须可以分解为若干个规模较小,与原文题形式相同的子问题,这些子问题可以用相同的解题思路来解决。格外重要的是递归必须有结束条件。

二、递归三要素:

1.明确递归终止条件; 2.给出递归终止时的处理方法; 3.提取重复的逻辑,缩小问题规模。

三、递归算法编程模型

1.在递去的过程中解决问题 function recursion(大规模){ if (end_condition){ // 明确的递归终止条件 end; // 简单情景 }else{ // 在将问题转换为子问题的每一步,解决该步中剩余部分的问题 solve; // 递去 recursion(小规模); // 递到最深处后,不断地归来 } } 2.在归来的过程中解决问题 function recursion(大规模){ if (end_condition){ // 明确的递归终止条件 end; // 简单情景 }else{ // 先将问题全部描述展开,再由尽头“返回”依次解决每步中剩余部分的问题 recursion(小规模); // 递去 solve; // 归来 } }

应用

1.问题的定义是按递归定义的(阶乘,Fibonaci数列) 代码如下(示例):

public class int jiecheng(int n) { if(n==1) return 1; return n*jiecheng(n-1); } 斐波那契 public static int f(int n) { if(n==1||n==2) { return 1;


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有