专栏名称: 蚂蚁金服ProtoTeam
数据前端团队
目录
相关文章推荐
程序员好物馆  ·  别再给所有函数起名叫 ... ·  16 小时前  
程序员好物馆  ·  别再给所有函数起名叫 ... ·  16 小时前  
前端早读课  ·  【第3521期】如何在 React 中构建一个库 ·  17 小时前  
前端早读课  ·  【第3520期】Slack、Notion ... ·  昨天  
前端早读课  ·  【图书】MCP原理与实战:高效AI ... ·  昨天  
脚本之家  ·  大厂都在用的 12 大主流 AI ... ·  2 天前  
脚本之家  ·  大厂都在用的 12 大主流 AI ... ·  2 天前  
51好读  ›  专栏  ›  蚂蚁金服ProtoTeam

归并排序与快速排序的简明实现及对比

蚂蚁金服ProtoTeam  · 掘金  · 前端  · 2017-12-07 16:19

正文

请到「今天看啥」查看全文


num = (i / 10 > 1 ) ? i : 10 ; array.push( Math .round( Math .random(i) * num + Math .round( Math .random(i)) * Math .random(i) * num * 10 ) ); } return array; } function show ( fn, size = 11 ) { console .log( '------------------------------------------' ); console .log( `Method: ${fn.name} ` ); console .log( '------------------------------------------' ); const array = createUnsortedArray(size); console .log( 'before:' ); console .log(array.toString()); console .log( 'after:' ); console .log(fn(array).toString()); }

先创建一个随机生成的未排序的数组,然后打印结果。

show(selectionSort);

// ------------------------------------------
// Method: selectionSort
// ------------------------------------------
// before:
// 9,22,3,27,74,54,8,41,80,74,3
// after:
// 3,3,8,9,22,27,41,54,74,74,80

热身二:冒泡排序

冒泡排序与选择排序有些类似,区别在于冒泡排序是先将最大值冒泡到最后的位置。早在 1956 年,就已经有人研究冒泡排序。

function bubbleSort(array) {
  for (let first = 0, len = array.length; first < len; first++) {
    let isSorted = true;
    for (let second = 0; second < len - first - 1; second++) {
      if (array[second] > array[second + 1]) {
        let






请到「今天看啥」查看全文