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

源码网商城

详解JS中的快速排序与冒泡

  • 时间:2021-01-14 09:59 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:详解JS中的快速排序与冒泡
[b]1.快速排序思想:[/b] [b]  1.1 先找数组的最中间的一个数为基准[/b] [b]  1.2 把数组通过此基准分为小于基准的left数组和大于基准的right数组,[/b] [b]  1.3 递归重复上面的两个步骤,[/b] 代码如下:
function quickSort(arr) {
  if (arr.length <=1 ){
    return arr;
  }
  var middleIndex = Math.floor(arr.length / 2);
  var left = [];
  var right = [];
  var middle = arr.splice(middleIndex,1)[0];
  for (var i = 0; i < arr.length; i++) {
    if ( arr[i] > middle) {
      right.push(arr[i]);
    } else {
      left.push(arr[i]);
    }
  }
  return quickSort(left).concat(middle,quickSort(right));
}
[b]2. 冒泡排序思想:[/b]  [b] 2.1 两两比较,交换位置[/b] [b]  2.2 循环数组[/b] 代码如下:
function bubbleSort(arr) {
  for (var i = 0; i < arr.length - 1; i++) {
    for (var j = 0; j < arr.length -1 -i; j++) {
      if( arr[j] > arr[j+1]){
        var temp = arr[j];
        arr[j] = arr[j+1];
        arr[j+1] = temp;
      }
    }
  }
  return arr;
}
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持编程素材网!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部