冒泡排序的思想:
1.两个数组两两比较,将较大的数字放在后边,第一次比较后最大的就放在了最后边
2.共比较n-1次
3.每比较完成一次后下次比较就不需要比较上次比较的最后一个数
比较次数:n-1次
## 代码实现:
```java
class PrintResult{
public static void main(String[] args){
int[] arr = {13,45,65,75,3,5,7,56,87,99,1};
System.out.println("排序前:");
printArrayList(arr);
System.out.println("排序后:");
bubbleSort(arr);
printArrayList(arr);
}
public static void bubbleSort(int[] arr){
int temp;
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]){
temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
}
public static void printArrayList(int[] arr){
System.out.print("{");
for(int i = 0;i < arr.length;i++){
if(i == arr.length-1){
System.out.println(arr[i]+"}");
}else{
System.out.print(arr[i]+",");
}
}
}
}
选择排序:
public class Sort {
public static void main(String[] args) {
int[] arr = new int[] {34,43,23,54,6,56};
System.out.println("排序前:");
printArray(arr);
selectSort(arr);
System.out.println("排序后:");
printArray(arr);
}
public static void printArray(int[] arr) {
System.out.print("{");
for(int i = 0 ;i <arr.length;i++) {
if(i==arr.length-1) {
System.out.println(arr[i]+"}");
}else {
System.out.print(arr[i]+",");
}
}
}
public static void selectSort(int[] arr) {
for(int x = 0 ;x<arr.length-1;x++) {
for(int y =x+1;y<arr.length;y++) {
if(arr[y]<arr[x]) {
int temp = arr[y];
arr[y] = arr[x];
arr[x] = temp;
}
}
}
}
}