当前位置: 首页 > Web前端 > JavaScript

编写一个简单的插入排序

时间:2023-03-26 21:21:02 JavaScript

插入排序是一种排序算法,将指定元素与有序范围的元素进行比较和交换。举个简单的例子,假设有这样一个无序数组。首先,我们把索引为0的元素看成一个区域,它是有序的,因为只有一个元素,不管怎么排序都是一个元素,所以认为是有序的。然后我们取出排序区右侧的第一个元素,即索引为1的第67号元素,存入变量temp中。然后从有序区最右边开始,将变量temp中的元素与67号元素一一比较。如果大于67,则将位置向右移动一个空格;如果小于67就不用继续遍历了,因为这个区域是Ordered的。上面的代码:functioninsertSort(arr){letlength=arr.length;for(leti=1;itemp&&j>0){arr[j]=arr[j-1];j--;}//将temp插入合适的位置arr[j]=temp;}returnarr;}console.log(insertSort([46,32,38,22,44,16]));VM77562:15(6)[16,22,32,38,44,46]