var sortColors = function(nums) { let l = -1; let r = nums.length; for(let i=0;i<r;){ if(nums[i] === 1){ i++; }else if(nums[i] === 2){ r--; [nums[i],nums[r]] = [nums[r],nums[i]]; }else if(nums[i] === 0){ l++ [nums[l],nums[i]] = [nums[i],nums[l]]; i++ } } console.log(nums); };
老师我不懂的是为什么,初始两个坐标都必须是不在有效期,一般情况下都是初始值是0,末尾是leng-1,我运行你的方法是正确,这个我做草稿也想不清楚,另外还有个问题,快排和这个差别是,我不知道怎么回事感觉脑子转的慢,很多排序方法看的头大