冒泡排序 JS作业 两种方法 简单方法
程序员文章站
2022-03-10 23:15:08
//比较两个相邻的元素的大小,将大的值交换至右端依次比较相邻的两个元素大小,先比较第1和第2个数,将大的元素交换至右端,然后比较第2和第3的元素,将大的元素交换至右端,如此重复步骤至最后。有X个数字要比较,需要进行X-1趟排序,每i趟排序为X- i 次。这里使用的是双重for循环语句,外循环控制趟,内循环控制次数。直至完成。 function num(arr) { for (var i = 0; i < arr.length - 1; i++) {...
//比较两个相邻的元素的大小,将大的值交换至右端
依次比较相邻的两个元素大小,先比较第1和第2个数,将大的元素交换至右端,然后比较第2和第3的元素,将大的元素交换至右端,如此重复步骤至最后。
有X个数字要比较,需要进行X-1趟排序,每i趟排序为X- i 次。这里使用的是双重for循环语句,外循环控制趟,内循环控制次数。直至完成。
function num(arr) {
for (var i = 0; i < arr.length - 1; i++) {
for (var j = 0; j <= arr.length - 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 = [100, 200, 300, 1, 2, 3, 10, 20, 30];
console.log(num(arr));
(sort内置对象)
这里sort将元素相互比较,从开始到结束,按照ASCII码值进行比较,最后按升序输出
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function (a, b) {
return a - b;
});
console.log(numbers);
输出结果为 12345
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function (a, b) {
return b - a;
});
console.log(numbers);
//输出结果为54321
本文地址:https://blog.csdn.net/weixin_49456518/article/details/107483391