Skip to content

leetcode-75 颜色分类 #234

@GuoLizhi

Description

@GuoLizhi

三路快排

/**
 * @param {number[]} nums
 * @return {void} Do not return anything, modify nums in-place instead.
 */
var sortColors = function(nums) {
    let p0 = 0;
    let p1 = nums.length - 1;
    let curr = 0;

    while (curr <= p1) {
        if (nums[curr] === 0) {
            let tmp = nums[p0];
            nums[p0] = nums[curr];
            nums[curr] = tmp;
            p0++;
            curr++;
        } else if (nums[curr] === 2) {
            let tmp = nums[curr];
            nums[curr] = nums[p1];
            nums[p1] = tmp;
            p1--;
        } else {
            curr++;
        }
    }
};

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions