'파이썬 알고리즘 인터뷰'를 보고 작성한 글입니다. 😀
문제 👉 <Best Time to Buy and Sell Stock - LeetCode>
1. 문제 (주식을 사고팔기 가장 좋은 시점)
한 번의 거래로 낼 수 있는 최대 이익을 산출하라.
2. 풀이
배열
을 이용한 풀이
- 최솟값을 계속 갱신하면서 현재값과 최솟값의 차이를 통해 최대 이익을 도출한다.
3. 코드
- 배열을 이용한 풀이
class Solution:
def maxProfit(self, prices: List[int]) -> int:
# 종료 조건
if len(prices) < 2:
return 0
ret, minP = 0, 100000
for price in prices:
if minP < price:
ret = max(ret, price-minP)
else:
minP = price
return ret
- 결과 :
방식 | Status | Runtime | Memory | Language |
---|---|---|---|---|
배열 | [Accepted] | 1160 ms | 25.1 MB | python3 |
References
🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다.
잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋
'Coding Test > LeetCode' 카테고리의 다른 글
[LeetCode] 238. Product of Array Except Self [Python(파이썬)] (0) | 2021.11.23 |
---|---|
[LeetCode] 49. Group Anagrams [Python(파이썬)] (0) | 2021.11.23 |
[LeetCode] 42. Trapping Rain Water [Python(파이썬)] (0) | 2021.11.23 |
댓글