插入排序
插入排序就是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入
复杂度和稳定性
时间复杂度
O ( n 2 ) O(n^2) O(n2)
空间复杂度
O ( 1 ) O(1) O(1)
稳定性
稳定 稳定 稳定
程序
class Solution {
public:
vector<int> sortArray(vector<int>& nums) {
for(int i=1;i<nums.size();i++){
int key=nums[i];
int j=i-1;
while((j>=0)&&(key<nums[j])){
nums[j+1]=nums[j];
j--;
}
nums[j+1]=key;
}
return nums;
}
};