直接插入排序
1.插入排序(Insertion-Sort)
将一个数据插入到已经排序好的有序序列中,从而得到新增一个数据的有序序列
2.图解
3.题目要求
4.代码(js)
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
* 将给定数组排序
* @param arr int整型一维数组 待排序的数组
* @return int整型一维数组
*/
function MySort( arr ) {
// write code here
let temp=0
for(let i=1;i<arr.length;i++){
while(arr[i]<arr[i-1]){
temp=arr[i]
arr[i]=arr[i-1]
arr[i-1]=temp
i--
}
}
return arr
}
module.exports = {
MySort : MySort
};
5.复杂度
5.1时间复杂度
最坏(逆序):O(n^2)
最好(正序):O(n)
平均复杂度:O(n^2)
空间复杂度
O(1)