插入排序(C++)

插入排序

插入排序就是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入

复杂度和稳定性

时间复杂度

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;
    }
};

运行结果

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qaaaaaaz/article/details/130094622
今日推荐