Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 파이썬
- Top-down
- Observer Pattern
- 그리디
- java
- Singleton Pattern
- GCP
- cpu scheduling
- Kotlin
- BubbleSort
- Codility
- docker
- k8s
- 알고리즘
- Programmers
- GKE
- go
- 피보나치
- 백준
- easy
- github
- kubernetes
- Python
- KAKAO
- mobaXTerm
- golang
- Backjoon
- Dynamic Programming
- LeetCode
Archives
- Today
- Total
To Be Developer
[LeetCode] 27. Remove Element(Python, GoLang) 본문
[Python 풀이]
class Solution(object):
def removeElement(self, nums, val):
ln = len(nums) # nums 의 길이
pivot = 0 # pivot index
self.removeNums(nums, pivot, val, ln)
return ln
def removeNums(self, nums, pivot, val, ln):
while ln > pivot: # pivot이 nums의 길이보다 작을 때
if nums[pivot]==val: # nums의 pivot 번째 element가 val과 같을 때
del nums[pivot] # pivot 번째 제거
ln-=1 # nums의 길이 1 감소
continue # 반복문 건너뜀
pivot+=1 # 그렇지 않을 경우 pivot 증가
[GoLang 풀이]
package main
func main() {
var nums = []int{3, 2, 2, 3}
var val int = 3
removeElement(nums, val)
}
func removeElement(nums []int, val int) int {
ln := len(nums)
var pivot int = 0
for ln > pivot {
if nums[pivot] == val {
nums = append(nums[0:pivot], nums[pivot+1:]...)
ln--
continue
}
pivot += 1
}
return ln
}
'알고리즘 > LeetCode' 카테고리의 다른 글
[LeetCode] 746. Min Cost Climbing (Python) (0) | 2019.04.30 |
---|---|
[LeetCode] 219. Contains Duplicate II (Python) (0) | 2019.04.22 |
[LeetCode] 504. Relative Ranks (Python) (0) | 2019.04.21 |
[LeetCode] 20. Valid Parentheses (Python) (0) | 2019.04.17 |
[LeetCode] 62. Unique Paths (GoLang, Python) (0) | 2019.04.12 |