源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

快速排序 php与javascript的不同之处

  • 时间:2020-08-29 03:07 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:快速排序 php与javascript的不同之处
[b]1. PHP [/b]
[u]复制代码[/u] 代码如下:
<?php $unsorted = array(2,4,5,63,4,5,63,2,4,43); function quicksort($array) { if (count($array) == 0) return array(); $pivot = $array[0]; $left = $right = array(); for ($i = 1; $i < count($array); $i++) { if ($array[$i] < $pivot) $left[] = $array[$i]; else $right[] = $array[$i]; } return array_merge(quicksort($left), array($pivot), quicksort($right)); } $sorted = quicksort($unsorted); print_r($sorted);
[b]2. JavaScript [/b]
[u]复制代码[/u] 代码如下:
var a = [2,4,5,63,4,5,63,2,4,43]; function quicksort(arr) { if (arr.length == 0) return []; var left = new Array(); var right = new Array(); var pivot = arr[0]; for (var i = 1; i < arr.length; i++) { if (arr[i] < pivot) { left.push(arr[i]); } else { right.push(arr[i]); } } return quicksort(left).concat(pivot, quicksort(right)); } console.log(quicksort(a));
注意,第一个条件语句是很重要的!而在PHP中COUNT函数将返回一个NULL值或空数组或0代替,你可以像count($array)<2的东西它
[u]复制代码[/u] 代码如下:
if (count($array) < 2) return $array;
在JavaScript中你无法使用,由于对'未定义'的值时,存在一个“空“数组作为参数传递。因此,需要包含上面的条件:
[u]复制代码[/u] 代码如下:
// this will result with an error if (arr.length < 2) return arr;
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部