java40道算法题
来源:互联网 发布:sftp 端口号 编辑:程序博客网 时间:2024/05/17 11:58
【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
publicclass exp2{
publicstaticvoid main(String args[]){
int i=0;
for(i=1;i<=20;i++)
System.out.println(f(i));
}
publicstaticint f(int x)
{
if(x==1 || x==2)
return 1;
else
returnf(x-1)+f(x-2);
}
}
或
publicclass exp2{
publicstaticvoid main(String args[]){
int i=0;
math mymath = new math();
for(i=1;i<=20;i++)
System.out.println(mymath.f(i));
}
}
class math
{
publicint f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
}
【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
publicclass exp2{
publicstaticvoid main(String args[]){
int i=0;
math mymath = new math();
for(i=2;i<=200;i++)
if(mymath.iszhishu(i)==true)
System.out.println(i);
}
}
class math
{
publicint f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
publicboolean iszhishu(int x)
{
for(int i=2;i<=x/2;i++)
if (x % 2==0 )
returnfalse;
returntrue;
}
}
【程序3】 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
publicclass exp2{
publicstaticvoid main(String args[]){
int i=0;
math mymath = new math();
for(i=100;i<=999;i++)
if(mymath.shuixianhua(i)==true)
System.out.println(i);
}
}
class math
{
publicint f(int x)
{
if(x==1 || x==2)
return 1;
else
return f(x-1)+f(x-2);
}
publicboolean iszhishu(int x)
{
for(int i=2;i<=x/2;i++)
if (x % 2==0 )
returnfalse;
returntrue;
}
publicboolean shuixianhua(int x)
{
int i=0,j=0,k=0;
i=x / 100;
j=(x % 100) /10;
k=x % 10;
if(x==i*i*i+j*j*j+k*k*k)
returntrue;
else
returnfalse;
}
}
- java40道算法题
- Java40
- (算法题)几道算法题
- 两道算法题
- 两道算法题
- 两道算法题
- 五道算法题
- 几道算法题
- 几道算法题
- 第二道算法题
- 三道算法题
- [算法]常见算法题
- 算法题/排序算法
- 三道简单算法题
- 几道算法题--记下
- 15道简单算法题
- 15道简单算法题
- 测试:四道算法题
- Window7 iis設定出錯0x8007000d
- menucool
- powerpoint、excel 2007与visual studio 2008 起冲突,打开时显示安装的问题解决方法
- Vim插件
- C++符号优先级
- java40道算法题
- tableView 中的单选控制 UITableViewCellAccessoryCheckmark
- java中重复数据的去除
- 内核_抢占
- Android Activity生命周期大全详解
- 服务器mysql数据库主从同步
- 搭建Django后的第一个工程
- Linux Tomcat 定时重启中文乱码
- ubuntu12.04安装svn 1.7