1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| public class SortColors { public void sortColors(int[] nums) {
int left = 0; int right = nums.length-1; int i = 0; while (i<=right) { if (nums[i] == 2) { swap(nums, i, right); right --; } else if (nums[i] == 0) { swap(nums, i, left); left ++; } else i ++; } } public void swap(int[] nums, int i, int j) { int t= nums[i]; nums[i] = nums[j]; nums[j] = t; } }
|