用js编写冒泡排序
时间: 2023-08-21 08:18:03 浏览: 38
下面是使用JavaScript编写冒泡排序的代码示例:
```javascript
function bubbleSort(arr) {
const 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]) {
[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]];
}
}
}
return arr;
}
// 示例
const arr = [3, 1, 5, 2, 4];
console.log(bubbleSort(arr)); // [1, 2, 3, 4, 5]
```
在上面的代码中,`bubbleSort`函数接收一个数组作为参数,然后使用两个嵌套的`for`循环进行遍历和比较,最终返回排好序的数组。注意,我们使用了ES6的解构赋值语法来交换两个元素的位置。
相关问题
用js编写一段冒泡排序
以下是用JavaScript编写的冒泡排序算法实现:
```
function bubbleSort(arr) {
var len = arr.length;
for (var i = 0; i < len - 1; i++) {
for (var j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
//测试
var arr = [5, 3, 8, 4, 2];
console.log(bubbleSort(arr));
```
运行结果:
```
[2, 3, 4, 5, 8]
```
冒泡排序算法的基本思想是比较相邻的元素,如果前者比后者大,则交换它们的位置,一轮比较完毕后,最大的元素就被移到了数组的最后面,然后再从头开始进行下一轮比较,直到所有元素都被排序。
编写冒泡排序的js代码
以下是冒泡排序的 Javascript 代码:
function bubbleSort(arr) {
var len = arr.length;
for (var i = 0; i < len; i++) {
for (var j = 0; j < len - 1 - i; j++) {
if (arr[j] > arr[j+1]) {
var temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}