-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
Description
三路快排
/**
* @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++;
}
}
};