當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
5种JavaScript中常用的排序方法
生活随笔
收集整理的這篇文章主要介紹了
5种JavaScript中常用的排序方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
5種JavaScript中常用的排序方法
01、冒泡排序
通過相鄰數據元素的交換,逐步將待排序序列變為有序序列,如果前面的數據大于后面的數據,就將兩值進行交換,將數據進行從小到大的排序,這樣對數組的第0個數據到N-1個數據進行一次遍歷后,最大的一個數據就到了數組第N-1個位置,排序進行完成。
var arr1 = [1, 5, 7, 6, 0, 9, 4]; function maopao(array){if(Array.isArray(array)){if (array.length == 1) {return array;}var temp = null;for (var i = 0; i < array.length; i++) {for (var j = 0; j < array.length - i - 1; j++) {if (array[j] > array[j + 1]) {temp = array[j];array[j] = array[j + 1];array[j + 1] = temp;}}}return array;} } console.log(maopao(arr1)); // 0,1,4,5,6,7,902、選擇排序
(1)在未排序序列中找到最小元素,把它放到排序序列起始位置。
(2)從剩余未排序序列中繼續尋找最小元素,然后放在排序序列末尾。
(3)以此類推,直至所有元素排序完成。
03、遞歸排序(快排)
(1)從數列中取出一個數作為參考,分區過程。
(2)將比這個數大的數全放到它的右邊,小于或等于它的數全放到它的左邊。
(3)對左右區間重復第二步,直到各區間只有一個數。
04、插入排序
將要排序的數組分成兩部分,每次從 后面的部分取出索引最小的值插入前面適當的位置。
var arr4 = [1, 9, 4, 2, 5, 3, 0, 8, 6, 7]; function charu(array) {if (Array.isArray(array)) {if (arraylength == 1) {return array;}for (var i = 1; i < array.length; i++) {var current = array[i];var preIndex = i - 1;while (preIndex >= 0 && array[preIndex] < current) {array[preIndex + 1] = array[preIndex];preIndex--;}array[preIndex + 1] = current;}return array;} } console.log(charu(arr4)); // 9,8,7,6,5,4,3,2,1,005、sort()
var arr5 = [1, 9, 4, 2, 5, 3, 0, 8, 6, 7]; arr5.sort(); console.log(arr5); // 0,1,2,3,4,5,6,7,8,9 《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的5种JavaScript中常用的排序方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何在JavaScript中获取时间戳
- 下一篇: 原生js实现懒加载