java一些面试题算法

//冒泡  相邻比较交换位置
int[] arr={3,5,1,7,6};
//从小到大
for(int j=0;j<arr.length-1;j++)
{
for (int i = 0; i < arr.length-1; i++) {
if(arr[i]>arr[i+1])
{
int temp=arr[i];
arr[i]=arr[i+1];
arr[i+1]=temp;
}
}
}

//选择  假设最值每遍比较
int[] arr={3,5,1,7,6,2,9,0};
//从小到大
for(int j=0;j<arr.length-1;j++)
{
int min_i=j;
for (int i = j+1; i < arr.length; i++) {
if(arr[min_i]>arr[ i ])
min_i=i;
}
int temp=arr[ j ];
arr[ j ]=arr[min_i];
arr[min_i]=temp;
}


数组最大最小值
int i,min,max;  
int A[]={74,48,30,17,62};  // 声明整数数组A,并赋初值  
min=max=A[0];  
for(i=0;i<A.length;i++)  
{  
System.out.print(A[i]+" ");  
if(A[i]>max)   // 判断最大值  
max=A[i];  
if(A[i]<min)   // 判断最小值  
min=A[i];  
}  
System.out.println("\n数组的最大值是:"+max); // 输出最大值  
System.out.println("数组的最小值是:"+min); // 输出最小值  


//获取最大值的下标  
    public static int getMaxIndex(int[] arr){  
        int maxIndex = 0;   //获取到的最大值的角标  
        for(int i=0; i<arr.length; i++){  
            if(arr[i] > arr[maxIndex]){  
                maxIndex = i;  
            }  
        }  
        return maxIndex;  
}

展开阅读全文
博主设置当前文章不允许评论。

没有更多推荐了,返回首页