最近开始学习Java,学到数组觉得可以试试几种经典的排序。
第一种,冒泡排序。冒泡排序似乎是一种最经典的排序了,之前在学C的时候也经常见到。。这次用Java实现下吧。
首先代码贴上来:
int[] arr = {11,22,33,44,55};
for (int i = 0; i <arr.length-1 ; i++) {
for (int j = 0; j <arr.length-1-i ; j++) {
if(arr[j]<arr[j+1]){
int temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}
int[] arr = {11,22,33,44,55};
for (int i = 0; i <arr.length-1 ; i++) {
for (int j = 0; j <arr.length-1-i ; j++) {
if(arr[j]<arr[j+1]){
int temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}
代码里面随便搞了个数组,测试一下没问题。
第二种是选择排序:
for (int i = 0; i <arr.length-1 ; i++) {
for (int j = i+1; j <arr.length ; j++) {
if(arr[i]<arr[j]){
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}
for (int i = 0; i <arr.length-1 ; i++) {
for (int j = i+1; j <arr.length ; j++) {
if(arr[i]<arr[j]){
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
for (int i = 0; i <arr.length ; i++) {
System.out.print(arr[i]+" ");
}