版权声明:转载请注明出处 https://blog.csdn.net/sixkery/article/details/82968194
题目
给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。
你可以返回满足此条件的任何数组作为答案。
示例:
输入:[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]
"""
alist = []
alist2 = []
for i in A:
if i % 2 == 0:
alist.append(i)
else:
alist2.append(i)
alist.extend(alist2)
return alist
list 追加元素
在Python中,向List添加元素,方法有如下4种方法(append(),extend(),insert(), +加号)
- append() 追加单个元素到List的尾部,只接受一个参数,参数可以是任何数据类型,被追加的元素在List中保持着原结构类型。
此元素如果是一个list,那么这个list将作为一个整体进行追加
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a.append(b)
>>> a
[1, 2, 3, [4, 5, 6]]
>>>
- 将一个列表中每个元素分别添加到另一个列表中,只接受一个参数;extend()相当于是将list B 连接到list A上。
>>> a = [1,2,3]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6]
>>>
- insert() 将一个元素插入到列表中,参数有两个(如insert(1,“g”)),第一个参数是索引点,即插入的位置,第二个参数是插入的元素。
>>> a
[1, 2, 3, 4, 5, 6]
>>> a.insert(2,10)
>>> a
[1, 2, 10, 3, 4, 5, 6]
>>>
- +加号,将两个list相加,会返回到一个新的list对象,注意与前三种的区别。前面三种方法(append, extend, insert)可对列表增加元素的操作,他们没有返回值,是直接修改了原数据对象。
注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
>>> a
[1, 2, 10, 3, 4, 5, 6]
>>> b
[4, 5, 6]
>>> a + b
[1, 2, 10, 3, 4, 5, 6, 4, 5, 6]
>>>