From 1c6922e62db821a0026af87167b0f7b97ce6f829 Mon Sep 17 00:00:00 2001 From: bumpsoo Date: Sat, 17 May 2025 00:22:50 +0000 Subject: [PATCH] https://leetcode.com/problems/sort-color --- medium/sort_colors.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 medium/sort_colors.py diff --git a/medium/sort_colors.py b/medium/sort_colors.py new file mode 100644 index 0000000..9161116 --- /dev/null +++ b/medium/sort_colors.py @@ -0,0 +1,22 @@ +# https://leetcode.com/problems/sort-colors + +from typing import List + +class Solution: + def sortColors(self, nums: List[int]) -> None: + def swap(i: int, j: int): + nums[i], nums[j] = nums[j], nums[i] + i = 0 + j = 0 + k = len(nums) - 1 + while j <= k: + if nums[j] < 1: + swap(i, j) + i += 1 + j += 1 + elif nums[j] > 1: + swap(j, k) + k -= 1 + else: + j += 1 +