資料結構與演算法 排序 選擇排序

2021-09-29 21:23:37 字數 1568 閱讀 9268

資料結構與演算法 ~ 排序 ~ 選擇排序

/*sort--selectsort*/

#include#includevoid selectsort(int *list,int len)/*if*/

print(list,len);

}/*for*/

}/*selectsort*/

int minkey(int *list,int i,int len)/*if*/

}/*for*/

return k;

}/*minkey*/

int print(int *list,int len)/*print*/

int main ()/*while*/

printf ("\n====初始的序列為:*****");

print(list,len);

printf("length=%d",len);

printf("\n*************************===");

selectsort(list,len);

printf ("\n*****=排序結果是:*****== :");

print(list,len);

system("pause");

exit(0);

}

執行結果:

請輸入待排序的數字(exit for 0)

5948

7596

8623

3759

6514

0====初始的序列為:*****

當前序列是 : 59, 48, 75, 96, 86, 23, 37, 59, 65, 14,length=10

*************************===

當前序列是 : 14, 48, 75, 96, 86, 23, 37, 59, 65, 59,

當前序列是 : 14, 23, 75, 96, 86, 48, 37, 59, 65, 59,

當前序列是 : 14, 23, 37, 96, 86, 48, 75, 59, 65, 59,

當前序列是 : 14, 23, 37, 48, 86, 96, 75, 59, 65, 59,

當前序列是 : 14, 23, 37, 48, 59, 96, 75, 86, 65, 59,

當前序列是 : 14, 23, 37, 48, 59, 59, 75, 86, 65, 96,

當前序列是 : 14, 23, 37, 48, 59, 59, 65, 86, 75, 96,

當前序列是 : 14, 23, 37, 48, 59, 59, 65, 75, 86, 96,

當前序列是 : 14, 23, 37, 48, 59, 59, 65, 75, 86, 96,

當前序列是 : 14, 23, 37, 48, 59, 59, 65, 75, 86, 96,

*****=排序結果是:*****== :

當前序列是 : 14, 23, 37, 48, 59, 59, 65, 75, 86, 96,請按任意鍵繼續. . .

資料結構與演算法 選擇排序

選擇排序 從小到大 的基本思想是,首先,選出最小的數,放在第乙個位置 然後,選出第二小的數,放在第二個位置 以此類推,直到所有的數從小到大排序。在實現上,我們通常是先確定第i小的數所在的位置,然後,將其與第i個數進行交換。下面,以對 3 2 4 1 進行選擇排序說明排序過程,使用min index ...

資料結構與演算法 選擇排序

1 什麼是程式?程式 資料結構 演算法 2 選擇排序 selection sort 基本思想 我們從第乙個位置開始,依次和後面的值進行比較,如找到比第乙個值小的,二者進行交換。交換後第乙個位置的值已經確定下來,我們再從第二個位置開始,依次和後面的進行比較,依次類推,知道所有的值都比較完成,到此選擇排...

資料結構與演算法 選擇排序

直接選擇排序非常好理解,但是效率不是很好。實際中很少使用 時間複雜度 o n 2 空間複雜度 o 1 穩定性 不穩定 基本思想 第一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,然後再從剩餘的未排序元素中尋找到最小 大 元素,然後放到已排序的序列的末尾。以此類推,直到全部...