java中陣列選擇排序 插入排序 氣泡排序

2021-08-21 09:27:20 字數 1330 閱讀 7582

一、首先定義乙個main函式

public static void main(string args) ;

//列印出排序前的陣列

printarray(arr);

directsort(arr);//選擇排序

insertsort(arr);//插入排序

bubblesort(arr);//氣泡排序

}

二、封裝乙個列印陣列的函式(printarray(int arr))

public static void printarray(int arr) 

system.out.println();

}

三、直接排序

雙重for迴圈,陣列的第乙個數a[0]和後面所有的數進行比對,得到最小的數,然後第二個數a[1]和後面所有的數進行比對,得到次小的數。。。反覆後得到排序後的結果。

public static void printarray(int arr) 

system.out.println();

private static void directsort(int arr)

}} printarray(arr);//呼叫列印陣列函式列印出排序後的陣列

} }

四、插入排序

插入排序和打牌一樣,拿到乙個數和前面已有的數進行對比,比前面的數小就放到前面,舉例:67,87,99,23,34

第一次內迴圈、拿到數a[1]=87,和a[0]=67進行對比,67小,不換位置,跳出內迴圈,進行下一次;

第二次內迴圈、拿到數99,和87比,位置不變,跳出內迴圈,進行下一次;

第三次內迴圈、拿到數23,和99比,交換位置,23在和87比,交換位置,最後和67比,再次交換位置,得到結果,      23,67,87,99,34;

public static void insertsort(int arr) 

else }}

printarray(arr);

}

五、氣泡排序

氣泡排序是兩兩之間進行對比,   如:67,87,99,23,34 :第一次內迴圈、67和87比-->67,87 、87和99比-->87,99、99和23比-->23,99、99和34比-->34,99。

這樣最大的乙個數就到了陣列的最後,第二次進行比對的時候只要比陣列長度-2次,就是

public static void bubblesort(int arr) 

}} }

陣列 氣泡排序 選擇排序 插入排序

package arr 我自己的陣列類 author guosheng public class arrayself public arrayself int chang 新增方法 郭勝 public void insert long value 降序插入 public void insertbys...

陣列排序 氣泡排序 插入排序 選擇排序

演算法思想 從頭開始依次比較兩個相鄰的元素 如果後面乙個比前面乙個大 說明順序不對,則將兩個交換,本次迴圈完成後從頭開始,直到沒有發生交換為止.給你乙個栗子 對5 2 3 1 4排序 首先 5 和 2 比較 5 2 將5 和 2 交換位置 之後的元素按照同樣的方法進行比較交換 第一次比較交換完成後 ...

選擇和插入排序 java

選擇排序 selection sort 選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理 首先在未排序序列中找到最小 大 元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。演算...