1.快速排序法
function quickSort(a) { if (a.length <= 1) { return a; } var midLength = Math.floor(a.length / 2); var midValue = a.splice(midLength,1); var left = []; var right = []; for (var i = 0; i < a.length; i++) { if (a[i] < midValue) { left.push(a[i]); } else { right.push(a[i]); } } return quickSort(left).concat(midValue,quickSort(right)); } console.log(quickSort([1,5,3,6,2,4,0]));2 .冒泡排序
function bubbleSort(a) { var length = a.length; var sortArray; for (var i = 0; i < length-1; i++) { for (var j = 0; j < length-i-1 ; j++) { if (a[j] > a[j+1]) { sortArray = a[j]; a[j] = a[j+1]; a[j+1] = sortArray; } } } return a; } console.log(bubbleSort([2,1,3,6,5,4,7,0]));3.插入排序
function insertSort(a) { var length = a.length; var sortArray; for (var i = 1; i < length; i++) { for (var j = 0; j < i ; j++) { if (a[i] < a[j]) { sortArray = a[i]; a[i] = a[j]; a[j] = sortArray; } } } return a; } console.log(insertSort([0,6,5,3,4,2,1,7]));4.选择排序
function selectSort(a) { for (var i = 0; i < a.length; i++) { var min = a[i]; var k = i; for (var j = i + 1; j < a.length; j++) { if (min > a[j]) { min = a[j]; k = j; } } a[k] = a[i]; a[i] = min; } return a; } console.log(selectSort([5,1,4,0,3,2,7,6]));
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/86110.html
摘要:上一篇数据结构与算法树写在前面这是学习数据结构与算法的最后一篇博客,也是在面试中常常会被问到的一部分内容排序和搜索。 上一篇:JS数据结构与算法_树 写在前面 这是《学习JavaScript数据结构与算法》的最后一篇博客,也是在面试中常常会被问到的一部分内容:排序和搜索。在这篇博客之前,我每每看到排序头就是大的,心里想着类似冒泡排序,两层遍历啪啪啪就完事了,然后再也无心去深入研究排序相...
摘要:本文介绍几种常见排序算法选择排序,插入排序,希尔排序,归并排序,快速排序,堆排序,对算法的思路性质特点具体步骤实现以及图解进行了全面的说明。最后对几种排序算法进行了比较和总结。 本文介绍几种常见排序算法(选择排序,插入排序,希尔排序,归并排序,快速排序,堆排序),对算法的思路、性质、特点、具体步骤、java实现以及trace图解进行了全面的说明。最后对几种排序算法进行了比较和总结。 写...
摘要:前端面试总结先说背景,本人年月毕业,去年十月校招到今年月一直在做前端开发工作,年前打算换工作,就重新梳理下面试考点总结包含基础,基础,常见算法和数据结构,框架,计算机网络相关知识,可能有的点很细,有的点很大,参考个人情况进行总结,方便对知识 前端面试总结 先说背景,本人2018年7月毕业,去年十月校招到今年10月一直在做前端开发工作,年前打算换工作,就重新梳理下面试考点总结包含: ...
摘要:前端面试总结先说背景,本人年月毕业,去年十月校招到今年月一直在做前端开发工作,年前打算换工作,就重新梳理下面试考点总结包含基础,基础,常见算法和数据结构,框架,计算机网络相关知识,可能有的点很细,有的点很大,参考个人情况进行总结,方便对知识 前端面试总结 先说背景,本人2018年7月毕业,去年十月校招到今年10月一直在做前端开发工作,年前打算换工作,就重新梳理下面试考点总结包含: ...
阅读 1342·2019-08-30 15:55
阅读 1643·2019-08-26 10:21
阅读 3436·2019-08-23 18:28
阅读 3374·2019-08-23 15:38
阅读 742·2019-08-23 15:24
阅读 2133·2019-08-23 13:59
阅读 773·2019-08-23 11:31
阅读 2868·2019-08-23 10:53