PHPでソート

            <div class="section">

今日の新卒コードレビューのお題。

文字列の数字を昇順にソートする。

$str = '20110801';
echo bubble_sort($str) . "\n";
echo quick_sort($str) . "\n";
function bubble_sort($str) {
$n = strlen($str) - 1;
for ($i = 0;$i < $n;$i++) {
for ($j = $n;$j > $i;$j--) {
if ($str[$j - 1] > $str[$j]) {
list($str[$j - 1], $str[$j]) = array($str[$j], $str[$j - 1]);
}
}
}
return $str;
}
function quick_sort($str) {
if (strlen($str) < 1) return;
$pivot = $str[0];
$left  = '';
$right = '';
for ($i = 1;$i < strlen($str);$i++) {
if ($pivot >= $str[$i]) {
$left  .= $str[$i];
}
if ($pivot < $str[$i]) {
$right .= $str[$i];
}
}
$left  = quick_sort($left);
$right = quick_sort($right);
return $left . $pivot . $right;
}