leetcode 第75題 顏色分類 (雙指標)

2021-09-29 11:40:09 字數 447 閱讀 8110

給定乙個包含紅色、白色和藍色,一共 n 個元素的陣列,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色、白色、藍色順序排列。

此題中,我們使用整數 0、 1 和 2 分別表示紅色、白色和藍色。

注意:不能使用**庫中的排序函式來解決這道題。

示例:輸入: [2,0,2,1,1,0]

輸出: [0,0,1,1,2,2]

高階:

乙個直觀的解決方案是使用計數排序的兩趟掃瞄演算法。

首先,迭代計算出0、1 和 2 元素的個數,然後按照0、1、2的排序,重寫當前陣列。

你能想出乙個僅使用常數空間的一趟掃瞄演算法嗎?

class

solution

else

if(nums[cur]==2

)else cur++;}

}}

Leetcode第75題 顏色分類(荷蘭國旗問題)

給定乙個包含紅色 白色和藍色,一共 n 個元素的陣列,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色 白色 藍色順序排列。此題中,我們使用整數 0 1 和 2 分別表示紅色 白色和藍色。注意 不能使用 庫中的排序函式來解決這道題。真香警告.jpg 示例 輸入 2,0,2,1,1,0 輸出 0...

第75題 顏色分類

75.顏色分類 第一眼看過去,這不就是陣列的排序嗎0.0 方法一 直接用庫函式排序。方法二 單指標 兩次遍歷。方法三 雙指標 一次遍歷。方法一 直接用庫函式排序。class solution 方法二 單指標 兩次遍歷 class solution public static void sortcol...

LeetCode刷題 (75) 顏色分類

給定乙個包含紅色 白色和藍色,一共 n 個元素的陣列,原地對它們進行排序,使得相同顏色的元素相鄰,並按照紅色 白色 藍色順序排列。此題中,我們使用整數 0 1 和 2 分別表示紅色 白色和藍色。注意 不能使用 庫中的排序函式來解決這道題。示例 輸入 2,0,2,1,1,0 輸出 0,0,1,1,2,...