身近にあるパソコン、スマートフォン、ゲーム。これらはすべてプログラムで動作しています。また、家電や自動車、ロケットに至るまで、現代の生活はプログラムに支えられており、何かを創造するためにはプログラミング技術の修得は避けられません。
そこで、情報通信工学部通信工学科の1年次配当科目「プログラミング基礎演習」では、プログラミング経験がない初心者を対象に、基本的な概念からアルゴリズムの理解まで幅広い内容を修得させ、今後に活かしてもらうことを目的とした授業を行っています。
さて、今回の授業ではソートを理解するため、「人間ソート」なるイベントを実施しました。
ソートとは、複数のデータからなる列を、何らかの順序性に基いて順番通りになるよう並べ替えることです。 数値列を大きい順または小さい順に並べたり、文字列をアルファベット順や五十音順に並べたり、日時を古い順または新しい順に並べ替えたりすることがこれにあたります。
今回は4つのソート手法「最小値選択ソート」「最小値交換ソート」「バブルソート」「クイックソート」の4種類を学生自らがデータに扮し、実際に動くことでアルゴリズムの原理を体感して理解する取り組みを行いました。
「人間ソート」は毎年の恒例行事で、理論を実際に体を使って体験することで、より知識と理解を深めることに大いに役立っています。
学生からも様々なソート手法の違いがよくイメージできたとの声を聞くことができました。