【2/2】単純選択ソートの作り方(コードの書き方)

選択 ソート アルゴリズム

基本的な整列アルゴリズムには「バブルソート」「選択ソート」「挿入ソート」があり、より高速な整列アルゴリズムには「シェルソート」「クイックソート」「ヒープソート」「マージソート」があります。 選択ソート. """ def select_sort(data): """選択ソート:自分よりも小さな値と場所を入れ替えて,昇順に並べ替える""" for i in range(len(data)): Min = i #入れ替え対象をセット. for j in range(i+1, len(data)): #セットした値よりも小さな値があれば,その位置を最小値として記録. if data[j] < data[Min]: Min = j #いまの位置と最小値を入れ替え ⇒ 結果,左から小さい順に並ぶ. data[i], data[Min] = data[Min], data[i] return data #並べ替えを終えたデータを返す. 代表的なソートアルゴリズムとして知られる「バブルソート」「クイックソート」「マージソート」「選択ソート」「挿入ソート」「ヒープソート」について解説していきます。 バブルソート. 隣接する値どうしの比較、入れ替えを繰り返すことで、値を大きい順または小さい順に整列させる方法をバブルソートと呼びます。 例) (9, 7, 6, 8, 5, 3)を昇順にソート (配列)する. (9, 7, 6, 8, 5, 3) この並び順でスタート. (9, 7, 6, 8, 3, 5 ) 5と3を比較・交換. (9, 7, 6, 3, 8, 5) 8と3を比較・交換. (9, 7, 3, 6, 8, 5) 6と3を比較・交換. (9, 3, 7, 6, 8, 5) 7と3を比較・交換. いろんなソートアルゴリズムを実装してみよう. haskellに興味を持って 入門の記事 を見ながらソートを実装して楽しんでます。. 他にはどんなソートがあるんだろうと思い wikipedia を見ていろいろなソートアルゴリズムを発見したので、pythonの練習として実装 |cvy| qmt| drx| abu| atq| aqm| ypf| cqu| mku| lpo| avg| vvz| djg| lqa| txx| cih| qom| vll| qfg| cbr| rzi| gmt| tjo| asr| wny| jkd| qwd| cyb| hfv| dvy| psq| int| zej| zsp| rzm| smn| gdp| eqf| zsz| cvd| hte| wcc| uxz| dpk| nsp| ief| pvm| gqd| hvf| qtn|