75. Sort Colors - LeetCode
生活随笔
收集整理的這篇文章主要介紹了
75. Sort Colors - LeetCode
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Question
75. Sort Colors
Solution
題目大意:
給一個數組排序,這個數組只有0,1,2三個元素,要求只遍歷一遍
思路:
記兩個索引,lowIdx初始值為0,highIdx初始值為nums.length - 1,遍歷數組,如果是2就與highIdx處元素互換且highIdx—,如果是0就與lowIdx處元素互換且lowIdx++,i++,還剩一種情況就是1了,執行i++,循環結束條件是i<=highIdx
Java實現:
public void sortColors(int[] nums) {int lowIdx = 0;int highIdx = nums.length - 1;int i = 0;while (i <= highIdx) {if (nums[i] == 2) {int tmp = nums[highIdx];nums[highIdx--] = nums[i];nums[i] = tmp;} else if (nums[i] == 0) {int tmp = nums[lowIdx];nums[lowIdx++] = nums[i];nums[i++] = tmp;} else {i++;}} }轉載于:https://www.cnblogs.com/okokabcd/p/9535348.html
總結
以上是生活随笔為你收集整理的75. Sort Colors - LeetCode的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GT-----FAQ整理
- 下一篇: Caused by: java.io.I