μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- μλν΄λΌμ°λ
- νμ΄μ¬
- ADsP
- Lambda
- iloc
- Python
- opencv
- dataframe
- λ°μ΄ν°λΆμμ€μ λ¬Έκ°
- numpy
- ν μ€νΈλΆμ
- ADP
- t-test
- λμνλ³Έ
- pandas
- λ 립νλ³Έ
- LDA
- μ£Όμ±λΆλΆμ
- λ°μ΄ν°λΆμμ λ¬Έκ°
- λ°μ΄ν°λΆμ
- κ΅°μ§ν
- μ€λ²μνλ§
- PCA
- λ°μ΄ν°λΆκ· ν
- datascience
- λΉ λ°μ΄ν°λΆμκΈ°μ¬
- DBSCAN
- ν¬λ‘€λ§
- μΈλμνλ§
- λΉ λ°μ΄ν°
Data Science LAB
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 ([1μ°¨] μΊμ) λ³Έλ¬Έ
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 ([1μ°¨] μΊμ)
γ γ γ γ 2023. 1. 19. 01:291. λ¬Έμ μ€λͺ
μ§λκ°λ°νμμ 근무νλ μ μ΄μ§λ μ§λμμ λμ μ΄λ¦μ κ²μνλ©΄ ν΄λΉ λμμ κ΄λ ¨λ λ§μ§ κ²μλ¬Όλ€μ λ°μ΄ν°λ² μ΄μ€μμ μ½μ΄ 보μ¬μ£Όλ μλΉμ€λ₯Ό κ°λ°νκ³ μλ€.
μ΄ νλ‘κ·Έλ¨μ ν
μ€ν
μ
무λ₯Ό λ΄λΉνκ³ μλ μ΄νΌμΉλ μλΉμ€λ₯Ό μ€ννκΈ° μ κ° λ‘μ§μ λν μ±λ₯ μΈ‘μ μ μννμλλ°, μ μ΄μ§κ° μμ±ν λΆλΆ μ€ λ°μ΄ν°λ² μ΄μ€μμ κ²μλ¬Όμ κ°μ Έμ€λ λΆλΆμ μ€νμκ°μ΄ λ무 μ€λ κ±Έλ¦°λ€λ κ²μ μκ² λμλ€.
μ΄νΌμΉλ μ μ΄μ§μκ² ν΄λΉ λ‘μ§μ κ°μ νλΌκ³ λ¦λ¬νκΈ° μμνμκ³ , μ μ΄μ§λ DB μΊμλ₯Ό μ μ©νμ¬ μ±λ₯ κ°μ μ μλνκ³ μμ§λ§ μΊμ ν¬κΈ°λ₯Ό μΌλ§λ‘ ν΄μΌ ν¨μ¨μ μΈμ§ λͺ°λΌ λκ°ν μν©μ΄λ€.
μ΄νΌμΉμκ² μλ¬λ¦¬λ μ μ΄μ§λ₯Ό λμ, DB μΊμλ₯Ό μ μ©ν λ μΊμ ν¬κΈ°μ λ°λ₯Έ μ€νμκ° μΈ‘μ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯ νμ
- μΊμ ν¬κΈ°(cacheSize)μ λμμ΄λ¦ λ°°μ΄(cities)μ μ λ ₯λ°λλ€.
- cacheSizeλ μ μμ΄λ©°, λ²μλ 0 β¦ cacheSize β¦ 30 μ΄λ€.
- citiesλ λμ μ΄λ¦μΌλ‘ μ΄λ€μ§ λ¬Έμμ΄ λ°°μ΄λ‘, μ΅λ λμ μλ 100,000κ°μ΄λ€.
- κ° λμ μ΄λ¦μ 곡백, μ«μ, νΉμλ¬Έμ λ±μ΄ μλ μλ¬Έμλ‘ κ΅¬μ±λλ©°, λμλ¬Έμ ꡬλΆμ νμ§ μλλ€. λμ μ΄λ¦μ μ΅λ 20μλ‘ μ΄λ£¨μ΄μ Έ μλ€.
μΆλ ₯ νμ
- μ λ ₯λ λμμ΄λ¦ λ°°μ΄μ μμλλ‘ μ²λ¦¬ν λ, "μ΄ μ€νμκ°"μ μΆλ ₯νλ€.
2. μ ν 쑰건
- μΊμ κ΅μ²΄ μκ³ λ¦¬μ¦μ LRU(Least Recently Used)λ₯Ό μ¬μ©νλ€.
- cache hitμΌ κ²½μ° μ€νμκ°μ 1μ΄λ€.
- cache missμΌ κ²½μ° μ€νμκ°μ 5μ΄λ€.
3. λ΄ νμ΄
from collections import deque
def solution(cacheSize, cities):
answer = 0
cache = deque()
for city in cities:
city = city.lower()
if city not in cache and len(cache) < cacheSize:
cache.append(city)
answer += 5
elif city not in cache and len(cache) == cacheSize:
cache.append(city)
cache.popleft()
answer += 5
else:
cache.remove(city)
answer += 1
cache.append(city)
return answer
4. λ€λ₯Έ μ¬λ νμ΄
def solution(cacheSize, cities):
import collections
cache = collections.deque(maxlen=cacheSize)
time = 0
for i in cities:
s = i.lower()
if s in cache:
cache.remove(s)
cache.append(s)
time += 1
else:
cache.append(s)
time += 5
return time
maxlen.. λ©λͺ¨...