数组排序
1、几种重要的排序
冒泡排序
*比较相邻的元素,如果第一个比第二个大,就交换他们两个。
*对每一个相邻元素做同样的工作,从开始第一对到结尾的最后一对,在这一点,最后的元素应该会是最大的数。
*针对所有的元素重复以上的步骤,除了最后一个。
*持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
public static void main(String[] args){
int[] array=new {32,14,24,68,58};
array=bubblesort(array);
System.out.println("排序完成后,最终的结果"+Arrays.toString(array));
}
public static int[] bubbleSort(int[] array){
for(int i= 0;i<array.length-1;i++){
for(int j =0;j<aray.length-1-i;j++){
if(array[j+1]<aray[j]){
array[j]=array[j]^array[j+1];
array[j+1]=array[j]^array[j+1];
array[j]=array[j]^array[j+1];
}
System.out.prinln(Arrays.toString(arayy);
}
}
return array;
}
2、直接排序
public static int[] chooseSort(int [] array){
for(int i =0;i<array.length-1;i++){
for(int j=i+1;j<aray.length;j++){
if(array[j]<array[i]){
int temp=aray[i];
array[i]=array[j];
array[j]=temp;
}
Syetem.out.println(Arrays.toString(array));
}
}
return array;
}
public static void main(String[] args){
int[] array={32,14,16,18,79};
array=chooseSort(array);
System.out.printly("排序完成后,最终的结果"+Arrays.toString(array));
}
数组中的字符交换位置
public static void reverseArray(char[] array){
int begin=0;
int end= array.length-1;
while(begin<end){
char temp=array[begin];
array[begin]=array[end];
array[end]=temp;
begin++;
end--;
}
}
public static void main(String[] args){
char[] array={'h'e'l'l'o'w'r'};
reverseArray(array);
System.out.println(Arrays.toString(array));
}