選択ソートの2言語目はPHPです。
JavascriptからのPHPの利点として、ほぼ同じコードでいけてしまうという事ですね。
手抜きとかではなく、メソッド管理がしっかりできていれば、簡単にローカライズできるといういい例かもしれません。
でも、そもそも、javascriptをPHPに移植するなんてシーンなどほとんどないですけどね・・・
ソースコード
<?php
function selectSort($numbers){
//数値配列を最初から順番に評価していく
for($i=0; $i<count($numbers)-1; $i++){
//最小値の格納変数(最初は評価対象数値を入れておく)
$min = $numbers[$i];
//入れ替え対象番号用変数
$num = $i;
//評価番以降の一番低い数値を取得
for($j=$num+1; $j<count($numbers); $j++){
if($min > $numbers[$j]){
$num = $j;
$min = $numbers[$j];
}
}
//評価番号と入れ替え番号が同じ場合は入れ替えなしとして処理無し
if($num == $i){continue;}
//評価番号と入れ替え番号の値を入れ替える
$numbers[$num] = $numbers[$i];
$numbers[$i] = $min;
}
return $numbers;
}
$res = selectSort(array(10,2,12,7,16,8,13));
echo join(",",$res);
echo PHP_EOL;
実行
$ php selectSort.php
2,7,8,10,12,13,16
前回のjavascriptコードとほぼ同じなんですが、注意ポイントは、以下の箇所です。
配列の記述方法(array())
変数の記述方法(ver ** -> $**)
ソースの最後に表示処理を追加
とりあえず、今回は消化試合という事で、すんなり終わっておきます。
関連リンク
いろいろなプログラム言語でアルゴリズム学習
0 件のコメント:
コメントを投稿