/***求排序后取最大值和最小值的绝对值*/
public static int ChaZhi(int[] in){
int temp = 0;
for(int i=0;i<in.length;i++){
for(int j=0;j<in.length;j++){
if(in[i]>in[j]){
temp = in[i];
in[i] = in[j];
in[j] = temp;
}
}
}
return Math.abs(in[0] - in[in.length-1]);
}
/***通过递归求一个数的阶乘*/
public static int jiesheng(int n){
if(n==1){
return n;
}else {
return n*jiesheng(n-1);
}
//4*jiesheng(3)
//4*3*jiesheng(2)
//4*3*2*jiesheng(1)
//4*3*2*1
}
/**
* *50个人围成一圈数到三和三的倍数时出圈,问剩下的人是谁?在原来的位置是多少? */
public static int removeNM(int n, int m) {//n=50,m=3
LinkedList ll = new LinkedList();
for (int i = 0; i < n; i++) {
ll.add(new Integer(i + 1));
}
int removed = -1;
while (ll.size() > 1) {
removed = (removed + m) % ll.size(); //2
ll.remove(removed--); //2,5,8......所在位置是3的倍数或者3
}
return ((Integer) ll.get(0)).intValue();
}