分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

一、.Net基础【1.8】递归

发布时间:2023-09-06 01:32责任编辑:傅花花关键词:递归

1.什么是递归?

方法自己调用自己。两个条件:递推方法;递归的终止条件:什么情况下不再递归。

2.案例1:阶乘

     //阶乘:5!=5*4*3*2*1。6!=6*5*4*3*2*1。f(n)=n*f(n-1) ???????static int JieCheng(int n) ???????{ ???????????//把栈内存填满了 ???????????//return n * jiecheng(n - 1); ???????????if (n < 0) ???????????{ ???????????????Console.WriteLine("n不能是负数"); ???????????} ???????????if (n == 0) ???????????{ ???????????????return 1; ???????????} ???????????return n * jiecheng(n - 1); ???????}

3.案例2:利用递归实现斐波那契数列

 ???????//1,1,2,3,5,8,13,21.....第n位(从0开始)值是多少?斐波那契额数列 ???????//递推方法:f(n)=f(n-1)+f(n-2)。终止条件:n=0,1 return 1。 ???????static int Fib(int n) ???????{ ???????????if (n < 0) ???????????{ ??????????????Console.WriteLine("n不能是负数"); ???????????} ???????????if (n == 0 || n == 1) ???????????{ ???????????????return 1; ???????????} ???????????return fib(n - 1) + fib(n - 2); ???????} ???

4.案例的非递归算法

 ????????static int JieCheng2(int n) ???????{ ???????????if (n < 0) ???????????{ ???????????????Console.WriteLine("n不能是负数"); ???????????} ???????????//n*(n-1)*(n-2)*1 ???????????int result = 1; ???????????for (int i = 1; i <= n; i++) ???????????{ ???????????????result = result * i; ???????????} ???????????return result; ???????} ???????static int Fib2(int n) ???????{ ???????????if (n < 0) ???????????{ ???????????????Console.WriteLine("n不能是负数"); ???????????} ???????????if (n == 0 || n == 1) ???????????{ ???????????????return 1; ???????????} ???????????int[] nums = new int[n + 1]; ???????????nums[0] = 1; ???????????nums[1] = 1; ???????????for (int i = 2; i < n + 1; i++) ???????????{ ???????????????nums[i] = nums[i - 1] + nums[i - 2]; ???????????????Console.WriteLine(string.Join(",", nums));//string.Join把一个集合用某个分隔符拼接起来,成为字符串 ???????????} ???????????return nums[n];//取最后一个元素的值 ???????}

一、.Net基础【1.8】递归

原文地址:http://www.cnblogs.com/lolitagis02/p/8094872.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved