본문 바로가기
Python/PS in Python

LeetCode 283. Move Zeroes - Python

by Air’s Big Data 2020. 8. 16.

LeetCode 283. Move Zeroes - Python

 

Given an array nums, write a function to move all 0's to the end of it while maintaining the relative order of the non-zero elements.

 

 

Example:

Input: [0,1,0,3,12]

Output: [1,3,12,0,0]

 

Solution :

#[::-1]는 처음부터 끝까지 -1칸 간격으로 ( == 역순으로)
#pop()는 리스트에서 주어진 위치에 있는 항목을 삭제하고, 그 항목을 돌려줌 
class Solution: 
	def moveZeroes(self, nums): 
		for i in range(len(nums))[::-1]: 
			if nums[i] == 0: 
				nums.pop(i) 
				nums.append(0)

 

 

(관련 개념)

Python Array[::] 사용법

더보기
>> arr = range(10) 
>> arr 
[0,1,2,3,4,5,6,7,8,9]
>> arr[::-1] # 처음부터 끝까지 -1칸 간격으로 ( == 역순으로) 
[9,8,7,6,5,4,3,2,1,0]

(출처 : https://blog.wonkyunglee.io/3)

리스트 요소 끄집어내기(pop)

더보기

pop()은 리스트의 맨 마지막 요소를 돌려주고 그 요소는 삭제한다.

>>> a = [1,2,3]
>>> a.pop()
3
>>> a
[1, 2]

(출처: https://wikidocs.net/14)

 

댓글