leetcode做题笔记75颜色分类

给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。

我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。

必须在不使用库内置的 sort 函数的情况下解决这个问题。

思路一:直接编写排序算法

void sortColors(int* nums, int numsSize){
    for(int i = 0;i<numsSize;i++)
    {
        for(int j = i+1;j<numsSize;j++){
            int temp;
            if(nums[i]>nums[j]){temp = nums[i];nums[i] = nums[j];nums[j] = temp;}
        }
    }
    return nums;

}

分析:

本题使用多种排序算法均可解决,为题解清晰简单使用冒泡算法作为题解

总结:

本题考察排序算法,编写相关算法即可解决

猜你喜欢

转载自blog.csdn.net/si_mple_/article/details/132253492