排序

作者: D一梦三四年 | 来源:发表于2017-11-04 22:08 被阅读0次

1. 冒泡排序(体育委员两两摸头法)

  • 实现基本思路:冒泡排序是经过 n-1 趟子排序完成的,第i趟子排序从第1个数至第 n-i 个数,若第 i 个数比后一个数大(则升序,小则降序)则交换两数。
伪代码流程图
  • 代码实现:
function bubble(arr) {
    for(var i = 0; i < arr.length; i++){  //比较多少轮,从第一轮开始
        for(var j = 0; j < arr.length - 1 - i; j++){  //每一次又比较多少次
            if(arr[i] > arr[i+1]){
                var temp;
                temp = arr[i];
                arr[i] = arr[i+1];
                arr[i+1] = temp;
            }
        }
    }
    return arr;
}

var a = [1,4,2,5,9];
bubble(a);
//[1, 2, 4, 5, 9]

2. 选择排序(体育老师一指禅法)

  • 找到数组最小的元素,将它和数组红第一个元素交换位置,接下来,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置,往复如此,直到将整个数组排序。基本点就是不断地选择剩余元素之中的最小者。
体伪代码流程图
  • 代码实现:
function selection(arr) {
    for(var i = 0; i < arr.length -1; i++) {  //这里之所以 arr.length -1,是因为到最后两个元素,交换位置,整个数组就已经排好序了
        var minNum = arr[i];
        for(var j = i + 1; j < arr.length; j++){   // j=i+1是把与自己比较的情况给省略掉
            if(arr[j] < minNum){
                var temp;
                temp = minNum;
                minNum = arr[j];    //交换两个值
                arr[j] = temp;
            }
        }
        arr[i] = minNum;
    }
    return arr;
}

var a = [1,4,2,5,9];
selection(a);
//[1, 2, 4, 5, 9]

相关文章

  • 【恋上数据结构与算法二】(一)排序(Sorting)

    排序方法 冒泡排序 选择排序 堆排序 插入排序 归并排序 快速排序 希尔排序 计数排序 基数排序 桶排序 初识排序...

  • 排序-冒泡排序

    排序系列传递门 排序—选择排序排序—快速排序排序—插入排序排序-希尔排序(待完善)排序—归并排序(待完善)排序—基...

  • 排序

    冒泡排序: 冒泡排序 选择排序: 插入排序: 希尔排序: 归并排序: 快速排序: 堆排序: 计数排序: 桶排序: ...

  • Java | 10种排序算法

    冒泡排序 选择排序 插入排序 希尔排序 计数排序 基数排序 堆排序 归并排序 快速排序 桶排序

  • 常见的排序

    冒泡排序: 选择排序: 插入排序: 快速排序: 希尔排序: 归并排序: 堆排序: 计数排序: 桶排序: 基数排序:

  • 002--20200409刷题

    冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序

  • 排序

    排序 符号:Θ 插入排序 选择排序 堆排序 归并排序 冒泡排序 快速排序 桶排序 基数排序 计数排序 插入排序 插...

  • 排序 -- 选择/插入

    聊聊排序吧 冒泡排序 选择排序 插入排序 快速排序 归并排序 计数排序 桶排序 堆排序 本篇 选择排序与插入排序 ...

  • 前端基础整理 | 算法基础

    排序算法 冒泡排序 选择排序 插入排序 希尔排序 归并排序 堆排序 快速排序

  • Java 常见的 8 种排序算法(内排序)

    排序分类 内部排序 插入排序:直接插入排序、希尔排序 交换排序:冒泡排序、快速排序 选择排序:直接选择排序、堆排序...

网友评论

      本文标题:排序

      本文链接:https://www.haomeiwen.com/subject/hamqmxtx.html