无论什么时候,面试官都看重程序员的算法基本功,这也是证明自己能力的最直接的方法,所以面试之前一定要多多温习算法,最近因为面试我简单总结了几个小算法,编译运行通过的,如果有什么错误,欢迎指正^V^
1.求n的阶乘
方法一:使用递归算法
/**
* 递归求阶乘
* @param n
* @return
*/
public int fac1(int n){
if(n<0){
return -1;//不合法
}else if(n==0){
return 1;//0的阶乘是1
}else{
return n*fac1(n-1);
}
}
方法二:
/**
* 不适用递归求阶乘
* @param n
* @return
*/
public int fac2(int n){
int res =1;
if(n<0){
return -1;
}
if(n==0){
return 1;
}
for(int i=1;i<=n;i++){
res = res*i;
}
return res;
}
2.实现从1到100的求和
//1到100求和
public int sum(){
int sum = 0;
for(int i=1;i<=100;i++){
sum +=i;
}
return sum;
}