6.3 単純選択法 |
|||
(1)考え方 最小の要素を選択し,先頭の要素と交換する方法。 単純交換法に比べて, 交換のためのコストは少なくなりますが, 離れた場所を交換するので,安定でないソートになります。 (2)手順 以下のように, 未ソート部の最小要素を未ソート部の先頭と交換します。 未ソート部のポインタは1ずつカウントアップします。 未ソート部より前は,ソートされた状態(既ソート部)になります。 [プログラム例] private void 単純選択法() { int i,j,ID,minDATA; for(i=0;i<Data.Length-1;i++) { minDATA=Data[i];ID=i; for(j=i+1; j<Data.Length; j++) if(minDATA>Data[j]){ minDATA=Data[j];ID=j; } if(ID!=i){ Data[ID]=Data[i];Data[i]=minDATA;} } } 1. 基本的なアルゴリズム 2. 基本的なデータ構造 3. 操作を伴うデータ構造 4. 探索 5. 再帰的アルゴリズム 6. ソート 7. 集合 8. 文字列処理 9. 色々なアルゴリズム 上のタイトルをクリックします |
|||