728x90
1. λ¬Έμ μμ½
λ°°μ΄ arrμμ μ°μμ μΌλ‘ λνλλ μ«μλ μ κ±°νκ³ λ¨μ μλ€μ λ°ννλ λ¬Έμ μ΄λ€.
λ¨, μ κ±°λ ν λ¨μ μλ€μ λ°νν λλ μλμ μμλ₯Ό μ μ§ν΄μΌ νλ€.
2. μ κ·Ό λ°©μ λ° ν¬μΈνΈ
λ°°μ΄μ μμλ₯Ό νλμ© μννλ©° κ°μ₯ μ΅κ·Όμ μΆκ°λ μ«μμ λΉκ΅νμ¬ μ€λ³΅ μ¬λΆλ₯Ό νλ¨νλ€.
- β
μ€ν νμ©: μλ‘μ΄ λ°°μ΄(μ€ν)μ λ§λ€κ³ , λ§μ§λ§ μμ(
stack[-1])κ° νμ¬ μ«μμ λ€λ₯Ό λλ§ μΆκ°νλ€. - β μμΈ μ²λ¦¬: μ€νμ΄ λΉμ΄μλ μ΄κΈ° μνμμλ λΉκ΅ν λμμ΄ μμΌλ―λ‘ λ¬΄μ‘°κ±΄ μ«μλ₯Ό μΆκ°ν΄μΌ νλ€.
3. ꡬν μ½λ (Python)
def solution(arr):
stack = []
for num in arr:
# μ€νμ΄ λΉμ΄μκ±°λ, λ§μ§λ§ μμκ° νμ¬ μ«μμ λ€λ₯΄λ©΄ μΆκ°
if not stack or stack[-1] != num:
stack.append(num)
return stack
π λ
Όλ¦¬ ꡬ쑰: not stack μ‘°κ±΄μ΄ λ¨Όμ μ€κΈ° λλ¬Έμ, μ€νμ΄ λΉμ΄μμ λ λ°μνλ IndexErrorλ₯Ό λ°©μ§ν μ μλ€.
4. π€ if not stack: vs if len(stack) == 0:
λ λ€ λΉ λ¦¬μ€νΈλ₯Ό 체ν¬νλ μ½λμ΄μ§λ§, νμ΄μ¬μμλ κ΄μ©μ μΌλ‘ if not stack λ°©μμ κΆμ₯νλ€.
- κ°λ μ±: μ½λκ° λ κ°κ²°νκ³ "νμ΄μ¬μ€λ½λ€(Pythonic)".
- μ±λ₯: λ―ΈμΈν μ°¨μ΄μ§λ§ ν¨μ νΈμΆ(
len()) κ³Όμ μ΄ μμ΄ μ μκ° λ λΉ λ₯΄λ€.
728x90
'π§© Algorithm > [Programmers] μκ³ λ¦¬μ¦ κ³ λμ KIT' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
| [Programmers/μκ³ λ¦¬μ¦ κ³ λμ KIT] μ¬λ°λ₯Έ κ΄νΈ (0) | 2026.04.03 |
|---|---|
| [Programmers/μκ³ λ¦¬μ¦ κ³ λμ KIT] κΈ°λ₯κ°λ° (0) | 2026.04.01 |
| [Programmers/μκ³ λ¦¬μ¦ κ³ λμ KIT] λ² μ€νΈμ¨λ² (0) | 2026.03.30 |
| [Programmers/μκ³ λ¦¬μ¦ κ³ λμ KIT] μμ (0) | 2026.03.21 |
| [Programmers/μκ³ λ¦¬μ¦ κ³ λμ KIT] μ νλ²νΈ λͺ©λ‘ (0) | 2026.03.19 |