def sortColors(nums):
    low, mid, high = 0, 0, len(nums) - 1
    
    while mid <= high:
        if nums[mid] == 0:
            nums[low], nums[mid] = nums[mid], nums[low]
            low += 1
            mid += 1
        elif nums[mid] == 1:
            mid += 1
        else:  # nums[mid] == 2
            nums[mid], nums[high] = nums[high], nums[mid]
            high -= 1
    
    return nums

# Examples
nums1 = [2, 0, 2, 1, 1, 0]
nums2 = [2, 0, 1]

print(sortColors(nums1))  # Output: [0, 0, 1, 1, 2, 2]
print(sortColors(nums2))  # Output: [0, 1, 2]
