classSolution{publicvoidsortColors(int[] nums){int left =0;int right = nums.length-1;for(int i =0; i <= right;i++){if(nums[i]==0){swap(nums,i,left++);}elseif(nums[i]==2){swap(nums,i--,right--);}}}privatevoidswap(int[] nums,int i,int j){int tmp = nums[i];nums[i]= nums[j];nums[j]= tmp;}}
3- ACM 实现
publicclass sortColors {publicstaticvoidsortC(int[] nums){int left =0;int right = nums.length-1;for(int i =0; i <= right;i++){if(nums[i]==0){swap(nums,i,left++);}elseif(nums[i]==2){swap(nums,i--,right--);}}}privatestaticvoidswap(int[] nums,int i ,int j){int tmp = nums[i];nums[i]= nums[j];nums[j]= tmp;}publicstaticvoidmain(String[] args){Scanner sc =newScanner(System.in);String input = sc.nextLine();input = input.replace("[","").replace("]","");String[] parts = input.split(",");int[] nums =newint[parts.length];for(int i=0; i < nums.length;i++){nums[i]=Integer.parseInt(parts[i]);}sortC(nums);System.out.println("结果是");for(int i : nums){System.out.print(i+" ");}}}