1. 程式人生 > >java常見練習,實現陣列快速排序功能

java常見練習,實現陣列快速排序功能

題目:用java實現陣列快速排序功能

首先要實現快速排序的話需要先得到數組裡的每一個數字,先遍歷這個陣列,即:

第一步

int[] arr = {2,1,5,4,7,9};
for (int i = 0; i < arr.length; i++) {
{

此時,我們就拿到了所有的一維數組裡面的資料,要想整個都排序的話需要將所有的元素都拿出來比較一下所以for迴圈裡面需要再巢狀一個for迴圈,起到使所有元素都拿出來比較的效果,又因為最後一個元素最終的時候不需要拿出來比較了,已經可以了所以第一步中的for迴圈可以簡單改變一下,最終出來的結果為:

第二步(這裡稍微改變了一下第一步for迴圈)

for (int i = 0; i < arr.length-1; i++) {
			for (int j = 0; j < arr.length-1-i; j++) {
			}
}

此時就需要加入判斷語句判斷一下元素的大小進行排序了,我們在內層for迴圈裡面加入判斷語句,即:

第三步

				if (arr[j] > arr[j + 1]) {
					int a = arr[j];
					arr[j] = arr[j + 1];
					arr[j + 1] = a;
				}

這樣就實現了排序,最終新增些好看的修飾語句,最終程式碼為:

最終程式碼

public class Demo2 {
	public static void main(String[] args) {
		int[] arr = {2,1,5,4,7,9};
		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 a = arr[j];
					arr[j] = arr[j + 1];
					arr[j + 1] = a;
				}
			}
		}
		System.out.println(Arrays.toString(arr));
	}
}

控制檯列印結果:

[1, 2, 4, 5, 7, 9]