Given an array A
of non-negative integers, return an array consisting of all the even elements of A
, followed by all the odd elements of A
.
You may return any answer array that satisfies this condition.
Example 1:
Input: [3,1,2,4] Output: [2,4,3,1] The outputs [4,2,3,1], [2,4,1,3], and [4,2,1,3] would also be accepted.
Note:
1 <= A.length <= 5000
0 <= A[i] <= 5000
python好久不用了,捡起来很费劲。
感觉运行时间很慢,简简单单一个小程序跑了92ms。但leetcoe还没有足够数据显示92ms是快还是慢orz
class Solution:
def sortArrayByParity(self, A):
"""
:type A: List[int]
:rtype: List[int]
"""
n=len(A)
if n==1:
return A
num=0
for i in range(0,n):
#print(A[i])
if A[i]%2==0:
num=num+1
if num==0 or num==n:
return A;
#print(num)
n2=n-1
while A[n2]%2==1:
n2=n2-1
for i in range(0,n-1):
if A[i]%2==1:
A[i],A[n2]=A[n2],A[i]
while A[n2]%2==1:
n2=n2-1
if i>=n2:
break
return A