ホームページ  >  記事  >  バックエンド開発  >  選択ソート、selectionsort_PHP チュートリアル

選択ソート、selectionsort_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:14:52822ブラウズ

選択ソート、選択ソート

赤色は現在の最小値です。黄色はソートされたリストです。ブルーは現行品です。 (写真はwikipediaより、少し早すぎます)

10の数字。昇順に並べ替えます。

1. 10 のうちの最小値を見つけて [0] に切り替えると、9 回の比較が必要になります

2.残りの9の最小値を見つけてa[1]に切り替えると、8回の比較が必要になります

。 。 .

1、10、9

2、9、8

3、8、7

4、7、6

5、6、5

6、5、4

7、4、3

8、3、2

9、2、1

結論: 10 個の数値の場合、最小値を見つけるのに 9 回必要であり、それぞれの比較には 1 つ足りない数値があります。

PHPでの実装:

リーリー

C语言选择排序输入k个数字,递减输出的selection_sort(array, k)程序

voidselection_sort(int array[],int k)

{
int i,j,m,t;
for(i=0;im=i;
for(j=i+1;jif(配列[j]m=j; //k记下目前に到達した最小位置の位置
if(m!=i){
t=array[i];
配列[i]=配列[m];
配列[m]=t;
}
}
}
void main(){
int a[10];
for (int i=0;iscanf("%d",&a[i]);
selection_sort(a,10);
printf("排序结果範囲:");
for (i=0;iprintf("%d\n",a[i]);
}
 

C语言选择排序输入k个数字,递减输出的selection_sort(array, k)程序

voidselection_sort(int array[],int k)

{
int i,j,m,t;
for(i=0;im=i;
for(j=i+1;jif(配列[j]m=j; //k记下目前に到達した最小位置の位置
if(m!=i){
t=array[i];
配列[i]=配列[m];
配列[m]=t;
}
}
}
void main(){
int a[10];
for (int i=0;iscanf("%d",&a[i]);
selection_sort(a,10);
printf("排序结結果:");
for (i=0;iprintf("%d\n",a[i]);
}
 

http://www.bkjia.com/PHPjc/908123.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/908123.html技術記事選択ソート、選択ソート 赤は現在の最小値です。黄色はソートされたリストです。ブルーは現行品です。 (写真はwikipediaより、ちょっと早すぎます) 10個の数字。昇順に並べ替えます。 1....
を見つけてください
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。