冒泡 快速 插入 選擇四種排序演算法實現

2021-08-21 14:57:13 字數 1459 閱讀 6778

一:氣泡排序

/**

* 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。

* 對每一對相鄰元素作同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。

* 針對所有的元素重複以上的步驟,除了最後乙個

* 持續每次對越來越少的元素重複上面的步驟,直到沒有任何一對數字需要比較。

* @param nums

*/public static void bubblesort(integer nums)}}

}

二、快速排序

public static int getmiddle(integer number, int low, int high)

number[low] = number[high];//比中軸小的記錄移到低端

while ( low < high && number[low] < temp)

number[high] = number[low];//比中軸大的記錄移到高階

}number[low] = temp;//中軸記錄到尾

return low;// 返回中軸的位置

}public static void quicksort(integer numbers,int low, int high)

}public static void quick(integer numbers)

}

三、選擇排序

/**

* 基本思想:在要排序的一組數中,選出最小的乙個數與第乙個位置的數交換;

* 然後在剩下的數當中再找最小的與第二個位置的數交換,

* 如此迴圈到倒數第二個數和最後乙個數比較為止

* @param numbers

*/public static void choosesort(integer numbers)

}temp = numbers[i];

numbers[i] = numbers[k];

numbers[k] = temp;

}}

四、插入排序

/**

* 基本思想:每步將乙個待排序的記錄,按其順序碼大小插入到前面已經排序的字序列的合適位置(從後向前找到合適位置後),直到全部插入排序完為止。

* 從第乙個元素開始,該元素可以認為已經被排序

* 取出下乙個元素,在已經排序的元素序列中從後向前掃瞄

* 如果該元素(已排序)大於新元素,將該元素移到下一位置

* 重複步驟3,直到找到已排序的元素小於或者等於新元素的位置

* 將新元素插入到該位置中

* 重複步驟2

*/public static void insertsort(integer numbers)

numbers[j] = temp;

}}

冒泡 插入 選擇 快速排序

各位親 有時間可以去看看我的 金駿家居 店 買時說明在我的部落格看到有優惠哦 還有意外禮品贈送 真正的程式設計師 店 氣泡排序 每次找出最大或者最小的數放到序列的最後。插入排序 每一次查詢都把數放到已排序序列合適的位置。例子 4,3,2,1如數中的第乙個數肯定是有序的,從第二個數開始3小於4,放在已...

排序 快速,插入,選擇,冒泡

快速排序 陣列快速排序 先取出陣列第乙個 把每個和它比較,比它小的放在l陣列,大的放r陣列,一直比較,最後合到乙個陣列 function kuaisu a l r array for i 1 i c i else l kuaisu l r kuaisu r return array merge l,...

php四種基本排序演算法(冒泡,選擇,插入,快速)

四種演算法,分別用氣泡排序法,快速排序法,選擇排序法,插入排序法將下面陣列中的值按照從小到大的順序進行排序。arr 1,43,54,62,21,66,32,78,36,76,39 1.氣泡排序 思路分析 在要排序的一組數中,對當前還未排好的序列,從前往後對相鄰的兩個數依次進行比較和調整,讓較大的數往...