排序之直接排序

2021-08-28 08:22:10 字數 507 閱讀 5893

這是乙個很簡單的排序

思路很簡單

先在未排序的數中找出最小值,然後放入已排序的末端

如 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 ...