赞
踩
即使做web开发,也会遇到各种各种需要解决的算法问题,本文节选部分经典练手算法,并提供相关参考答案,希望对你有所帮助
白嫖这份答案←戳我 Java 后端开发面试总结【25 个技术专题】
【程序1】
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题
public class test01 { public static void main(String[] args) { int f1=1,f2=1,f; int M=30; System.out.println(1); System.out.println(2); for(int i=3;i<m;i++) { f=f2; f2=f1+f2; f1=f; System.out.println(f2); } } }
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。
public class test02 { public static void main(String[] args) { int count=0; for(int i=101;i<200;i+=2) { boolean flag=true; for(int j=2;j<=Math.sqrt(i);j++) { if(i%j==0) { flag=false;break; } }if(flag==true) { count++; System.out.println(i); } } System.out.println(count); } }
【程序3】
题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
public class test03 {
public static void main(String[] args) {
int a,b,c;
for(int i=101;i<1000;i++){
a=i%10;
b=i/10%10;
c=i/100;
if(a
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。