您的位置:首页 > Web前端 > JavaScript

编写函数,实现插入排序

2016-12-29 16:49 162 查看
插入排序是指,先假定将 n 个元素的数列分为已有序和无序两个部分;然后将无序数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。

使用 JavaScript 编写的插入排序函数如下所示:

function insertionSort(arr) {
//从第二个元素开始
for (var i = 1; i < arr.length; i++) {
// 取出待比较的元素
var k = arr[i];
// 向前找,找到比当前元素大的位置
var j;
for (j = i - 1; j >= 0 && k < arr[j]; j--) {
//向后移动一位
arr[j + 1] = arr[j];
}
// 插入元素
arr[j + 1] = k;
}
}


测试函数 insertionSort,代码如下:

var arr = [12, 4, 9, 21, 43, 3];
insertionSort(arr);
console.log(arr);


上述代码运行时,将输出排序后的结果:[3, 4, 9, 12, 21, 43]。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐