[アルゴリズム] 選択ソートの実装(Awk編)

bingo-1044718_1280
LINEで送る
Share on GREE
Share on LinkedIn

今回のawk版は関数を使って構築します。
AWKはUNIXでは古くからある言語なのですが、あまり知られていない言語でもあり、よく外部セミナーなどで、社外の人と話す時に「ハァ?」と言われるんですが、これほどパワフルなスクリプト言語もないだろう。
しかもOS依存していてIOに強いなんて、知らないほうが損をするレベルである。
毎回AWK言語に関して、この手の話をしますが、相変わらず人気が無い言語であることもよくわかる。
そして、コマンドラインのワンラインコマンドという認識で使われているレベルが極めて多いことも事実かもしれない。
でも、そんなことにはめげずに、選択ソートをコーディングしてみたいと思います。

ソースコード

数値のデータ群

実行

解説

ソースコードは相変わらずPHPのモノをそのままローカライズである。

AWKの最大の欠点は、配列の扱いがイマイチであるという事で、関数の文字受け渡しで配列を使うと、痛烈に実感する事になる。
具体的に言うと、関数の受け渡しに配列を使うと、送られてきた変数は、文字列になる。
そして、配列のままreturnするとエラーになるので、わざわざ文字列に直してあげないといけない。
今回は、なんとなく、その都度コードを書いて対応しているが、これはこの企画の為になんとか便利関数を作っておかねばいかんだろう。
だが、今回はそんな対応はせずに、次回以降に回すとしよう。
これが、「ザ・後回し!」である。
仕事ではよく使う手なので、スピード優先の現場ではオススメしたい。

関連リンク

選択ソート

解説
Javascript
PHP
Python
Shell
Awk

アルゴリズム過去記事

http://wordpress.ideacompo.com/?cat=562&tag=Algorithm

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*