固定了位置來找相應的元素。
在要排序的一組數中,選出最小(或者最大)的乙個數與第1個位置的數交換;然後在剩下的數當中再找最小(或者最大)的與第2個位置的數交換,依次類推,直到第n-1個元素(倒數第二個數)和第n個元素(最後乙個數)比較為止。
package sort;
//選擇排序:固定位置找元素
//插入排序:固定元素找位置
public
class ******selectionsort
int index;
for (int i = 0; i < data.length; i++)
}if (index != i) }}
private
static
void
swap(int data, int p, int q)
int tmp = data[p];
data[p] = data[q];
data[q] = tmp;
}}
不穩定的排序:舉例:[2,2,1]
時間複雜度:o(n^2)
選擇排序之簡單選擇排序
選擇排序是幾大排序演算法中的一種,選擇排序的思想如下 每趟從待排序的記錄序列中選擇關鍵字最小的記錄放置到已排序表的最前位置,直到全部排完。選擇排序大概有兩種,今天我們說其中一種 簡單選擇排序。1 基本思想 在要排序的一組數中,選出最小的乙個數與第乙個位置的數交換 然後在剩下的數當中再找最小的與第二個...
選擇排序之簡單選擇排序
選擇排序,是一種簡單直觀的排序演算法 它的工作原理如下。首先在未排序序列中找到最小 大 元素,存放到排序序列的起始位置,然後,再從剩餘未排序元素中繼續尋找最小 大 元素,然後放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。演算法描述 1 首先從待排序元素中選出最小乙個,下標min 2 如果m...
選擇排序之簡單選擇排序
選擇排序的基本思想是 每趟 如第i趟 在後面n i 1 i 1,2,n 1 個待排序元素中選取關鍵字最小的元素,作為有序子串行的第i個元素,直到第n 1躺做完,待排序元素只剩下乙個,就不用再選了。選擇排序中有簡單選擇排序和堆排序。假設排序表為l 1.n 第i趟排序即從l i n 中選擇關鍵字最小的元...