大牛生小牛的问题
2007-09-09 11:00
197 查看
问题:
一只刚出生的小牛,4年后生一只小牛,以后每年生一只。现有一只刚出生的小牛,问20年后共有牛多少只?
思路:
这种子生孙,孙生子,子子孙孙的问题,循环里面还有循环的嵌套循环,一看就知道是第归问题。
于是乎,第一个版本出现:
public long Compute1(uint years)
Hashtable table = new Hashtable();
public long Compute(uint years)
{
{
{
{
{
{
table.Add(subYears, count);
}
i++;
}
return (long)count;
}
用测试程序测试一下上面的推论吧,结果如下:
1)当输入years比较小的时候,第一种方法耗时短,但两者的时间基本在一个数量级上
2)当输入years比较大的时候,比如40以上的,第二种算法比第一种性能比在100以上,而且输入years越高,性能比越悬殊。
测试结果截图:
20年
50年
源程序以及测试程序:/Files/jillzhang/HowMoneyCows.rar
-------------------------------------------------------
人老了,脑袋不好用了,偶尔用算法来练练脑子,可以防止早衰。呵呵
jillzhang jillzhang@126.com
一只刚出生的小牛,4年后生一只小牛,以后每年生一只。现有一只刚出生的小牛,问20年后共有牛多少只?
思路:
这种子生孙,孙生子,子子孙孙的问题,循环里面还有循环的嵌套循环,一看就知道是第归问题。
于是乎,第一个版本出现:
public long Compute1(uint years)
Hashtable table = new Hashtable();
public long Compute(uint years)
{
{
{
{
{
{
table.Add(subYears, count);
}
i++;
}
return (long)count;
}
用测试程序测试一下上面的推论吧,结果如下:
1)当输入years比较小的时候,第一种方法耗时短,但两者的时间基本在一个数量级上
2)当输入years比较大的时候,比如40以上的,第二种算法比第一种性能比在100以上,而且输入years越高,性能比越悬殊。
测试结果截图:
20年
50年
源程序以及测试程序:/Files/jillzhang/HowMoneyCows.rar
-------------------------------------------------------
人老了,脑袋不好用了,偶尔用算法来练练脑子,可以防止早衰。呵呵
jillzhang jillzhang@126.com
相关文章推荐
- 关于大牛生小牛的问题
- 为深入理解面向对象——大牛生小牛的问题
- C#算法之大牛生小牛的问题高效解决方法
- 农夫养牛问题 (将牛分为三种小牛、中牛、大牛)
- C#算法之关于大牛生小牛的问题
- (求助大牛)关于vs2010上的AVS代码bug问题~~
- 母牛生小牛问题
- 据说每个大牛、小牛都应该有自己的库——JavaScript原生对象拓展
- 据说每个大牛、小牛都应该有自己的库——Event处理
- 各位大牛帮忙看看问题出来哪?自己实现一个数组模板类,编译无法通过
- 据说每个大牛、小牛都应该有自己的库——DOM处理
- 这篇文章为了请教大牛帮忙解决一下现网乱码问题
- swun 1429&hdu 4320 进制转化(大牛&小牛代码)
- 利用面向对象解母牛生小牛问题
- 各位大牛,再问个问题!!!!
- 冲向大牛之安卓---2014.11月面试经常碰到的一些问题
- 递推之生兔子,生小牛问题
- HLG 1038 菜鸟和大牛(数塔问题 简单DP)
- 据说每个大牛、小牛都应该有自己的库——DOM处理续
- 母牛生小牛的问题