JavaScript 冒泡排序算法实现及示例
以下是 JavaScript 中冒泡排序算法的实现:
function bubbleSort(arr) {
var len = arr.length;
for (var i = 0; i < len - 1; i++) {
for (var j = 0; j < len - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
// 更换位置
var temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
return arr;
}
// 示例使用
var arr = [64, 34, 25, 12, 22, 11, 90];
console.log(bubbleSort(arr)); // [11, 12, 22, 25, 34, 64, 90]
冒泡排序是一种简单的排序算法,它重复地遍历要排序的数组,比较相邻的元素,并交换它们的位置,直到数组排序完毕。
算法步骤:
- 比较相邻的元素。如果第一个元素大于第二个元素,则交换它们的位置。
- 重复步骤 1,直到到达数组的末尾。
- 对数组进行重复步骤 1 和 2,直到整个数组排序完毕。
示例代码解析:
bubbleSort(arr)函数接受一个数组作为参数,并返回排序后的数组。- 两个嵌套的
for循环用于遍历数组和比较相邻元素。 if (arr[j] > arr[j + 1])语句判断相邻元素的大小,如果第一个元素大于第二个元素,则交换它们的位置。temp变量用于临时存储要交换的元素。
冒泡排序的特点:
- 易于理解和实现。
- 时间复杂度为 O(n^2),其中 n 是数组的长度。
- 不稳定排序算法。
总结:
冒泡排序是一种简单的排序算法,适用于小型数组的排序。对于大型数组,它的效率较低,因此建议使用其他更快的排序算法。
原文地址: https://www.cveoy.top/t/topic/mjzn 著作权归作者所有。请勿转载和采集!