thiagowfx's avatar

Β¬ just serendipity πŸ€ (not just serendipity)

LeetCode #905: Sort Array By Parity

β€’ 123 words β€’ 1 min β€’ updated

LeetCode #905: Sort Array By Parity:

Create a new list:

python
class Solution:
    def sortArrayByParity(self, nums: List[int]) -> List[int]:
        return [num for num in nums if num % 2 == 0] + [num for num in nums if num % 2 == 1]

Or use sort:

python
class Solution:
    def sortArrayByParity(self, nums: List[int]) -> List[int]:
        return sorted(nums, key=lambda x: x & 1)

Or:

python
class Solution:
    def sortArrayByParity(self, nums: List[int]) -> List[int]:
        nums.sort(key=lambda x: x & 1)
        return nums

Or two pointers:

python
class Solution:
    def sortArrayByParity(self, nums: List[int]) -> List[int]:
        i = 0
        j = len(nums) - 1

        while i < j:
            if nums[i] % 2 == 1:
                nums[i], nums[j] = nums[j], nums[i]
                j -= 1
            else:
                i += 1

        return nums