0
点赞
收藏
分享

微信扫一扫

C#,纽曼-康韦数(Newman Conway Number)的算法与源代码

千行 2022-04-29 阅读 21
c#算法

纽曼-康韦数(Newman Conway Number)序列是生成以下整数序列的序列。

1 1 2 2 3 4 4 4 5 6 7 7…

在数学上,纽曼-康韦数的序列P(n)由递推关系定义:
(1) P(n)=P(P(n-1))+P(n-P(n-1))
(2) P(1)=1, P(2)=1

计算结果:

源程序:

using System;

namespace Legalsoft.Truffer.Algorithm
{
	public static partial class Number_Sequence
	{
		public static int Newman_Conway_Number(int n)
		{
			if (n == 1 || n == 2)
			{
				return 1;
			}
			else
			{
				int a = Newman_Conway_Number(n - 1);
				int b = Newman_Conway_Number(a);
				int c = Newman_Conway_Number(n - a);
				return (b + c);
			}
		}


		public static int Newman_Conway_Number_Second(int n)
		{
			int[] dump = new int[n + 1];
			dump[0] = 0;
			dump[1] = 1;
			dump[2] = 1;
			for (int i = 3; i <= n; i++)
			{
				dump[i] = dump[dump[i - 1]] + dump[i - dump[i - 1]];
			}
			return dump[n];
		}
	}
}

——————————————————————————

POWER BY 315SOFT.COM

TRUFFER.CN

举报

相关推荐

0 条评论