直接選擇排序方法屬於選擇排序的一種,他的排序速度要比氣泡排序快一些,也是常用的排序演算法
直接選擇排序的基本思想是將指定排序位置和其他陣列元素對比,如果滿足條件就交換元素值。注意這裡和氣泡排序的區別,不是交換相鄰元素,而是把滿足條件的元素與指定的排序位置交換(如從最後乙個元素開始排序),這樣排序好的位置逐漸擴大,最後整個陣列都成為已排序好的格式
相關示例**
package hello;
/*** @package: hello
* @classname: directsort
* @author: 喬文軍
* @createtime: 2020/8/9 13:02
* @description: 直接排序
*/public
class
directsort
;//建立直接排序類的物件
directsort sorter =
newdirectsort()
;//呼叫排序物件的方法將陣列排序
sorter.
sort
(array);}
private
void
sort
(int
array)
}//交換在位置 array.length-1 和 index(最大值)上的兩個數
int temp = array[array.length-i]
; array[array.length-i]
= array[index]
; array[index]
= temp;
}showarray
(array);}
private
void
showarray
(int
array)
system.out.
println()
;}}
選擇排序 直接選擇排序
演算法思想 在每一趟的排序中,從待排序列中選出關鍵字最小或者最大的元素放在其最終的位置上 過程分析 在第i趟直接排序中,通過n i次關鍵字的比較,從n i 1個元素中選出關鍵字最小的元素 與第i個元素進行交換。經過n 1趟比較,直到表有序為止 效能分析 時間複雜度o n 2 include defi...
選擇排序 直接選擇排序
直接選擇排序也成為簡單選擇排序。對於乙個待排序數列,每次從無序區選擇乙個最小的元素,放入有序區 初始時有序區為空 直到無序區元素只有乙個 即整個數列的最大值 具體操作 第i趟排序開始,數列分為有序區a 0,i 1 和無序區a i,n 1 從無序區中選擇最小元素a k 將a k 放在無序區的最左邊的位...
選擇排序 直接選擇排序
直接選擇排序 straight select sorting 也是一種簡單的排序方法,它的基本思想是 第一次從r 0 r n 1 中選取最小值,與r 0 交換,第二次從r r n 1 中選取最小值,與r 1 交換,第i次從r i 1 r n 1 中選取最小值,與r i 1 交換,第n 1次從r n ...