Daily temperatures 시간 복잡도 질문
안녕하세요 강사님, Daily temperatures 문제 시간 복잡도에 의문이 생겨서 질문 드립니다.
강의에서 말씀해주신 코드가 아래와 같은데요
def daily_temperatures(temperatures):
ans = [0] * len(temperatures)
stack = []
for day, temp in enumerate(temperatures):
while stack and stack[-1][1] < temp:
prev_day = stack.pop()[0]
ans[prev_day] = day - prev_day
stack.append((day, temp))
return ans첫번째 for 부분에서 시간 복잡도가 O(n)이고,
두번째 while문이 왜 시간복잡도가 O(1)인지 좀 헷갈립니다.
list의 pop의 시간복잡도가 O(1)이긴 한데, 이것도 n번 반복하면 O(n)이지 않나요?
while문에서 최대한 pop이 일어날수 있는 수가 n번 ? 같아서 질문 드립니다.
감사합니다.
Câu trả lời 1
노션 공유 링크
0
85
2
수업 중간에 내주신 문제는 해답을 알 수 없는걸까요?
0
74
2
최신 강의와 비교
0
81
2
Min Cost Climbing stairs 질문
0
74
2
노션 공유 부탁드립니다!
1
86
2
for 문에 sort 함수 를 사용하면
1
86
2
노션 공유 부탁드립니다.
0
101
2
디스코드가 올바르지 않다고 뜹니다..!
0
105
1
그래프
0
96
2
노션 공유
1
121
2
시간복잡도 질문
2
122
3
11강 질문
1
76
2
노션 공유 부탁드립니다
0
82
2
linkedList - BrowserHistory 코드 질문
0
74
1
list1.append(list2)와 list1.append(list2[:])의 차이가 무엇인가요?
1
165
1
라이브러리 사용
1
134
2
문제 교재는 따로 없는 거 맞나요?
1
200
2
LCA 관련해서 질문이 있습니다.
1
116
2
[Unique Paths] 완전탐색 / DP (후반부)
0
104
1
dp 계단오르기최소비용질문입니다.
0
106
1
Dynamic Array 의 size 정보가 저장되는 곳
2
159
2
노션공유가 안된듯 합니다
1
161
2
[코테 적용] 👉 [3번 문제] 완전탐색 (DFS, BFS) (전반부)
1
119
1
강의자료 만들 때 사용하신 프로그램이 뭘까요?
1
199
1


