算法----分解数例(递归实现)
来源:互联网 发布:淘宝客服岗位任职要求 编辑:程序博客网 时间:2024/05/14 12:24
设a[1]=a[2]=1,
a[n]=a[1]a[n-1]+a[2]a[n-2]+...+a[n-1]a[1],
其中n是正整数,求a[n]。
解:利用递归算法:
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace HelloWorld
{
class Test
{
public static void Main(String[] args){
Console.Write(GetSum(5));
Console.Read();
}
public static int GetSum(int n)
{
if (n <= 2)
return 1;
else
{
int sum = 0;
for (int i = 1; i < n; i++)
{
sum += GetSum(i) * GetSum(n - i);
}
return sum;
}
}
}
}
可以把a[n]=a[1]a[n-1]+a[2]a[n-2]+...+a[n-1]a[1],
看做:∑GetSum(i)*GetSum(n-i),
∑可以看做循环处理,
在每次循环里设置一个变量sum代表这次循环的和(∑),
循环完毕后,将∑返回上层调用继续循环。
- 算法----分解数例(递归实现)
- C递归实现数分解
- caioj1038:递归8(分解数)
- 【源码】将一个整数的每位数分解并按逆序放入一个数组中(用递归算法)(C语言实现)
- 算法训练 幂方分解(递归)
- 整数分解(递归)
- 分解质因数(递归)
- 数值分解(递归)
- 使用递归求一个数分解质因数
- 整数因子分解:计算一个整数所有的分解式(递归实现)
- 数独算法(非递归)
- java数独生成算法(递归)
- 逆序数递归算法
- -(数的分解)
- 分解质因素的Java递归算法
- 数米粒个数和每个米粒面积的matlab算法实现(递归)。
- 使用递归算法实现斐波那契数
- 全排列算法【非递归活动数实现】
- 算法----汉诺塔的递归实现
- 锚标签和相关属性(Href,Target,Name)
- oracle中to_char()的使用
- C#生成com组件,供VB調用
- Firebug快速入门(一)
- 算法----分解数例(递归实现)
- Div+CSS+JS树型菜单,可刷新
- Pro*c中嵌入PL/SQL块
- jAVA 代码质量
- .net FrameWork数据提供程序要求 Microsoft Data Access Components (MDAC) 。请安装Microsoft Data Access Components(MDAC)2.6或更高版本
- css中的属性
- C# 中的常用正则表达式总结
- 事件ID: 1090 Windows不能记录RSoP试图连接到WMI 时失败
- 《设计模式--基于C#的工程化实现及扩展》 Security Design Pattern 系列 4 角色模式(Role Pattern)