LeetCode刷题之905. 按奇偶排序数组
我不知道将去向何方,但我已在路上! |
---|
时光匆匆,虽未曾谋面,却相遇于斯,实在是莫大的缘分,感谢您的到访 ! |
- 题目:
给定一个非负整数数组 A
,返回一个由 A
的所有偶数元素组成的数组,后面跟 A
的所有奇数元素。你可以返回满足此条件的任何数组作为答案。 - 示例:
示例 1 :
输入:[3,1,2,4]
输出:[2,4,3,1]
输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。
- 1 <=
A.length
<= 5000 - 0 <=
A[i]
<= 5000
class Solution(object):
def sortArrayByParity(self, A):
"""
:type A: List[int]
:rtype: List[int]
"""
a = []
b = []
for i in range(len(A)):
if A[i] % 2 == 0:
a.append(A[i])
else:
b.append(A[i])
return a+b
- 算法说明:
建立两个空的列表,然后将偶数放在一个列表,将奇数放在一个列表,最后拼接。 - 代码2:
class Solution(object):
def sortArrayByParity(self, A):
"""
:type A: List[int]
:rtype: List[int]
"""
i = 0
for j in range(len(A)):
if A[j] % 2 == 0:
A[i], A[j] = A[j], A[i]
i += 1
return A
- 算法说明:
找到一个偶数和前面的奇数进行互换,将所有的偶数换到前面!