JS中,sort数据排序和冒泡排序的方法示例

在JavaScript中,Array.prototype.sort() 是内建的排序方法,但默认情况下它会把数组元素转换为字符串,然后按照字符的Unicode码点顺序进行排序。对于数字数组,你可能需要提供一个比较函数来确保正确的排序。

另一方面,冒泡排序是一种简单的排序算法,你可以通过编写自己的函数来实现它。

以下是两种方法的示例:

1. 使用 Array.prototype.sort() 进行排序

let numbers = [5, 2, 9, 1, 5, 6];  
  
// 使用sort方法,并传入一个比较函数以确保数字按升序排序  
numbers.sort(function(a, b) {  
    return a - b;  
});  
  
console.log(numbers); // 输出: [1, 2, 5, 5, 6, 9]

或者使用箭头函数:

let numbers = [5, 2, 9, 1, 5, 6];  
  
numbers.sort((a, b) => a - b);  
  
console.log(numbers); // 输出: [1, 2, 5, 5, 6, 9]

2. 冒泡排序

function bubbleSort(arr) {  
    let len = arr.length;  
    for (let i = 0; i < len - 1; i++) {  
        for (let j = 0; j < len - 1 - i; j++) {  
            if (arr[j] > arr[j + 1]) { // 相邻元素两两对比  
                // 元素交换  
                let temp = arr[j + 1]; // 元素交换  
                arr[j + 1] = arr[j];  
                arr[j] = temp;  
            }  
        }  
    }  
    return arr;  
}  
  
let numbers = [5, 2, 9, 1, 5, 6];  
let sortedNumbers = bubbleSort(numbers);  
  
console.log(sortedNumbers); // 输出: [1, 2, 5, 5, 6, 9]

这两种方法都可以对数组进行排序,但 Array.prototype.sort() 通常是更高效的,因为它在大多数现代JavaScript引擎中都被优化过。然而,冒泡排序在算法和数据结构的学习中是一个很好的起点,因为它简单易懂。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值