思路:選擇排序(selection-sort)是一種簡單直觀的排序演算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢
想法:選擇排序實際上是乙個雙指標問題,乙個指標用來遍歷陣列,另乙個指標指向排序好的位置的後一位,每當出現最小元素時,兩個指標指向的元素交換,並且兩個指標同時向右移動一位,如果沒有出現最小元素,那麼就只有遍歷陣列的指標移動。
//選擇排序,每次選擇最小的排在前面
public
class
selection
//指標i,用來遍歷陣列
for(
int i =
0;i1;i++
)//將最小值換到i的位置
swap
(arr,i,minindex);}
}public
static
void
swap
(int
arr,
int x,
int y)
}
八大排序演算法之選擇排序
選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。選擇排序是不穩定的排序方法 比如序列 5,5,3 第一次就將第乙個 5 與 3 交換,導致第乙個5挪動到第二個...
八大排序演算法之選擇排序
created by leixingbang on 2017 9 25.選擇排序主要思想是將陣列拆分為兩部分,一部分是已經排序的新陣列和剩下的尚未排序的子陣列 每次選擇,都從尚未排序的子陣列中找出最小的數字,新增到已經排序的新陣列分。定理 對於長度為n的選擇排序需要 1 n n 2次比較 n 1,n...
八大排序之選擇排序
個人部落格 建議先看排序綜述,傳送門 資料結構與演算法系列之一 八大排序綜述。選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理如下。首先在未排序序列中找到最小 大 元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末...