LeetCode-905-按奇偶排序数组

2020-10-25  本文已影响0人  阿凯被注册了

难度简单171收藏分享切换为英文接收动态反馈给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。
你可以返回满足此条件的任何数组作为答案。


image.png

解题思路:

  1. 双指针:从list的头尾分别向中间遍历,当A[i]为奇数且A[j]为偶数时,交换两个值。

Python3代码:

class Solution:
    def sortArrayByParity(self, A: List[int]) -> List[int]:
        i, j = 0, len(A)-1
        while i <= j:
            if A[i] % 2 and A[j] % 2 == 0:
                A[i],A[j] = A[j],A[i]
                i+=1
                j-=1
            if A[i]%2==0:
                i+=1
            if A[j]%2==1:
                j-=1
        return A
上一篇下一篇

猜你喜欢

热点阅读