java经典小算法

时间:2023-12-10 10:35:14
package com.shb.java;

public class Demo4 {

	/**时间有限 先不写文字了 自己随便敲的
* @param args
* @author shaobn
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// System.out.println(getDir(10));
// getMethod(new int[]{0,15,23,455,45,12});
getMethod_2(new int[]{1,45,848,66});
}
//上台阶问题
public static int getDir(int n){
if(n==1){
return 1;
}else if (n==2) {
return 2;
}else if (n>2) {
return getDir(n-1)+getDir(n-2);
}
return 1; }
//将数组每个都往前移动,最后一个为原来数组的第一个
public static void getMethod(int[] array){
int temp =0;
int cur = 0;
for(int i=0;i<array.length;i++){
if(i==0){
temp = array[i];
continue;
}
array[cur] = array[i];
cur++;
if(i==array.length-1){
array[i] = temp;
} }
for(int i:array){
System.out.println(i);
} }
//把数组倒序输出
public static void getMethod_2(int[] array){
if(array.length%2==0){
int tmp = 0;
for(int i=0;i<array.length/2;i++){
tmp=array[i];
array[i] = array[array.length-i-1];
array[array.length-i-1]=tmp;
}
for(int i:array){
System.out.println(i);
} }else {
int tmp = 0;
for(int i=0;i<(array.length-1)/2;i++){
tmp = array[i];
array[i] = array[array.length-i-1];
array[array.length-i-1]=tmp;
}
for(int i:array){
System.out.println(i);
}
}
} }