ホームページ  >  記事  >  ウェブフロントエンド  >  クイックソートphpスキルとjavascript_javascriptスキルの違い

クイックソートphpスキルとjavascript_javascriptスキルの違い

WBOY
WBOYオリジナル
2016-05-16 18:10:291515ブラウズ
1. PHP
复制代码代码如下:

$未ソート = 配列(2,4,5,63,4,5,63,2,4,43);
関数 Quicksort($array)
{
if (count($array) == 0)
return array();
$pivot = $array[0];
$left = $right = array();
for ($i = 1; $i if ($array[$i] < $pivot)
$left[] = $array [$i];
else
$right[] = $array[$i];
}
return array_merge(quicksort($left), array($pivot), Quicksort($right));
}
$sorted = クイックソート($unsorted);
print_r($sorted);

2. JavaScript
复制代码代码如下:

var a = [2,4, 5,63,4,5,63,2,4,43];
関数 Quicksort(arr)
{
if (arr.length == 0)
return [];
var left = new Array();
var right = new Array();
var pivot = arr[0];
for (var i = 1; i if (arr[i] left.push(arr[i]);
} else {
right.push(arr[i]);
}
}
return クイックソート(左).concat(ピボット, クイックソート(右));
}
console.log(クイックソート(a));

注意、最初の条件の句は重要です。PHP 内の COUNT 関数では、代わりに NULL 値または空数群、または 0 が返されます。画像カウント ($array)
复制代码代码如下:

if (count($array) < 2)
$array を返します。

JavaScript では、「未定」の値のため、パラメータの伝達として「空」の数値群が存在します。そのため、次の条件を含める必要があります。
复制代 代码如下:
// これはエラーになります
if (arr.length < 2)
arr を返します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。