「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

基本選択法

pointこの用語のポイント

pointデータを小さい順(大きい順)に並べるときの やり方だよ

point小さいやつから(大きいやつから)選んで抜いていくよ

スポンサーリンク

簡単に書くよ

基本選択法(読:キホンセンタクホウ 英:selection sort)とは

「選択ソート」のこと。
用語の中身としては

バラバラに並んでいるデータを「小さい順」or「大きい順」に並べ替えるやり方のひとつ
であり

データの集まりの中から1番小さいやつを選び出して別の場所に置く→残ったデータの中から1番小さいやつを選び出して、さっき抜いたやつの隣に並べる→残ったデータの中から1番小さいやつを選び出して、さっき抜いたやつの隣に並べる→残ったデータの中から……のように、地道に選び出して並べていくことで全体を並べ替えるやり方
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「ソート」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

ソートは「何らかの規則に従ってデータを並べること」です。
並べる順番は

・小さい順昇順
・大きい順降順
・アルファベット順
・五十音順
・古い順
・新しい順
・好きな順
・嫌いな順


など、いろいろ あります。

基本選択法

以上を踏まえて

データを小さい順や大きい順に並べるときの やり方のひとつ

が「基本選択法」です。
選択ソート」とも呼ばれます。

基本選択法で やることは単純です。
バラバラなデータの中から

1.1番小さいデータを選び出す
2.2番目に小さいデータを選び出す(選んだデータは1番小さいデータの隣に並べる)
3.3番目に小さいデータを選び出す(選んだデータは2番目に小さいデータの隣に並べる)
    ・
    ・
    ・


をデータがなくなるまで繰り返すだけです。

……と言葉で説明されても、イメージしにくいかも しれませんね。

大丈夫です。
例を挙げて説明します。

ここに「1」から「5」までの数字がバラバラにありました。
これを基本選択法を使って小さい順に並べ替えます。

基本選択法2

まずは、このデータの中から1番小さいデータを選び出します。
1番小さいデータは「1」ですね。

基本選択法3

選び出した「1」は別のところに置いておきましょう。

基本選択法4

次に、残ったデータの中から1番小さいデータを選び出します。
1番小さいデータは「2」ですね。

基本選択法5

選び出した「2」は、先ほど選んだ「1」の隣に並べておきます。

基本選択法6

次に、残ったデータの中から1番小さいデータを選び出します。
1番小さいデータは「3」ですね。

基本選択法7

選び出した「3」は、先ほど選んだ「2」の隣に並べておきます。

基本選択法8

次に、残ったデータの中から1番小さいデータを選び出します。
1番小さいデータは「4」ですね。

基本選択法9

選び出した「4」は、先ほど選んだ「3」の隣に並べておきます。

基本選択法10

次に、残ったデータの中から……おっと、もう1つしか残っていませんね。
残っているのは「5」です。

基本選択法11

最後に残った「5」を先ほど選んだ「4」の隣に並べます。

基本選択法12

おぉ、ちゃんと小さい順に並びましたね。

基本選択法13

これが基本選択法の基本的な考え方です。

やっていることは単純ですよね。
並べる前のデータから小さい順に選び出して、別の場所に置いていくだけです。
小さい順に選んだので、置いた先では小さい順に並びます。

ただし、です。

ちょっと応用編として、この並び替えをデータが一列に並んだ状態でやろうとする場合があります。
その説明を最初に読んでしまうと、難しく感じるかもしれません。

例えば、そうですね。

ここに「1」から「4」までの数字がバラバラな順番で一列に並んでありました。
これを基本選択法で並べ替えます。

基本選択法14

まずは、この一列に並んだデータの中から1番小さいデータを選び出します。
1番小さいデータは「1」ですね。

基本選択法15

次に、選び出した「1」を一番左に移動させます。

基本選択法16

……が、邪魔なやつがいますね。

基本選択法17

もめ事を起こすのは良くないので、穏便に済ませましょう。
お願いして場所を交換してもらいます。

基本選択法18

これで、1番小さい「1」が一番左になりました。

基本選択法19

「1」の場所は決まったので、一旦 忘れます。

基本選択法20

次に、残ったやつ(「1」以外のやつ)の中から1番小さいデータを選び出します。
1番小さいデータは「2」ですね。

基本選択法21

次に、選び出した「2」を(「1」より右で)一番左に移動させます。

基本選択法22

……が、やっぱり邪魔なやつがいますね。

基本選択法23

もめ事を起こすのは良くないので、穏便に済ませましょう。
お願いして場所を交換してもらいます。

基本選択法24

これで、2番目に小さい「2」が左から2番目の場所に収まりました。

基本選択法25

「2」の場所は決まったので、一旦 忘れます。

基本選択法26

次に、残ったやつ(「1」と「2」以外のやつ)の中から1番小さいデータを選び出します。
1番小さいデータは「3」ですね。

基本選択法27

次に、選び出した「3」を(「1」と「2」より右で)一番左に移動させます。

基本選択法28

……が、やっぱり邪魔なやつがいますね。

基本選択法29

もめ事を起こすのは良くないので、穏便に済ませましょう。
お願いして場所を交換してもらいます。

基本選択法30

これで、3番目に小さい「3」が左から3番目の場所に収まりました。
それと同時に、1番大きな「4」も1番右側に来ました。

基本選択法31

おっと、小さい順に並びましたね。
これで並び替えは完了です。

基本選択法32

やっていることは前半で説明したのと同じですが、少し複雑そうに見えますよね。

まずは前半で説明した基本選択法の「考え方」を理解できるように頑張ってください。
考え方を理解できれば、後半で説明したデータが一列に並んだ状態でやる並べ替えも理解できると思います。


image piyo2

一言でまとめるよ

まぁ「基本選択法」って単語が出てきたら「並べ替えのやり方なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像034
書籍画像016


書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
クイズで学ぶUIデザイン ユーザビリティの基本が身につく50問
ソフトウェア開発現場の「失敗」集めてみた。 42の失敗事例で学ぶチーム開発のうまい進めかた