這是乙個很簡單的排序
思路很簡單
先在未排序的數中找出最小值,然後放入已排序的末端
如 9 8 7 6 5 4 3 2 1
先是找到最小數1
然後陣列變為 1 8 7 6 5 4 3 2 9
然後在未排序數中找到最小值 2
放入已排序數的末端
變為 1 2 7 6 5 4 3 9 8
如此不斷迴圈最後變為 1 2 3 4 5 6 7 8 9
**如下
#include using namespace std;
int a[2500];
int main()
for(int i=1;i<=n;i++)
{int zuixiao=i;
for(int j=i;j<=n;j++)
{if(a[j]**就是如此簡單?
ps:由**可以發現不管資料如何 這個排序的執行次數永遠都是n^2;
由此可以得出時間複雜度永遠都是o(n^2);
排序演算法之直接選擇排序
直接選擇排序是將整個待排序序列分為兩部分,一部分為有序 最開始有序序列為空 一部分為無序 最終無序序列為空 有序序列中的數都不大於無序序列中的數。它的過程是每次都在無序中尋找乙個最小的數,然後將其與無序序列的第乙個數交換,並併入有序序列。則有序序列長度增1,無序序列長度減1。比如 對r 0 n 陣列...
排序演算法之直接選擇排序
直接選擇排序是將整個待排序序列分為兩部分,一部分為有序 最開始有序序列為空 一部分為無序 最終無序序列為空 有序序列中的數都不大於無序序列中的數。它的過程是每次都在無序中尋找乙個最小的數,然後將其與無序序列的第乙個數交換,並併入有序序列。則有序序列長度增1,無序序列長度減1。比如 對r 0 n 陣列...
排序之直接排序(邊生成邊排序)
一 原理 假設陣列為numarr 4 並且陣列第乙個元素已經賦值為3,numarr 0 3 1.假設產生乙個數temp 5,若要在插入陣列時排序,則先於numarr 0 比較,temp numarr 0 則5應該插入在3後面,即numarr 1 5 2.假如temp 1,temp numarr 0 ...