Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด ์ต๋ํ heapq์์๋ ์ต๋ ํ์ ์ ๊ณตํ์ง ์๋๋ค. ๋ฐ๋ผ์ ๋ค์๊ณผ ๊ฐ์ด ๋ถํธ๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํด์ ์ต๋ ํ์ ๊ตฌํํ๋ค. ๋ถํธ๋ฅผ ๋ฐ๊ฟ์ ์ต์ ํ์ ๋ฃ์ด์ค ๋ค์ ์ต์๊ฐ๋ถํฐ pop์ ํด์ค ๋ ๋ค์ ๋ถํธ๋ฅผ ๋ฐ๊ฟ์ฃผ๋ฉด ์ต๋ ํ๊ณผ ๋์ผํ๋ค. import heapq heap = [] values = [1,5,3,2,4] # ์๋ for๋ฌธ์ ์คํ์ํค๊ณ ๋๋ฉด heap์ [-5,-4,-3,-1,-2]๊ฐ ๋๋ค. for value in values: heapq.heappush(heap, -value) # ์๋ for๋ฌธ์ ์คํ์ํค๋ฉด 5,4,3,2,1์ด ์ถ๋ ฅ๋๋ค. ์ฆ, ํฐ ์ซ์๋ถํฐ ์ถ๋ ฅ์ด ๋๋ค. for i in range(5): print(-heapq.heappop(heap))
Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด ์ต์ ํ: ๋ถ๋ชจ ๋
ธ๋์ ํค๊ฐ์ด ์์ ๋
ธ๋์ ํค๊ฐ๋ณด๋ค ํญ์ ์์ ํ ์ต๋ ํ: ๋ถ๋ชจ ๋
ธ๋์ ํค๊ฐ์ด ์์ ๋
ธ๋์ ํค๊ฐ๋ณด๋ค ํญ์ ํฐ ํ ํ ์์ฑ & ์์ ์ถ๊ฐ import heapq heap = [] heapq.heappush(heap, 50) ์ด๋ฏธ ์์ฑํด๋ ๋ฆฌ์คํธ๊ฐ ์๋ค๋ฉด heapify ํจ์๋ฅผ ํตํด ์ฆ๊ฐ์ ์ผ๋ก ํ ์๋ฃํ์ผ๋ก ๋ณํํ ์ ์๋ค. heap2 = [50 ,10, 20] heapq.heapify(heap2) ํ์์ ์์ ์ญ์ heappop ํจ์๋ ๊ฐ์ฅ ์์ ์์๋ฅผ ํ์์ ์ ๊ฑฐํจ๊ณผ ๋์์ ๊ทธ๋ฅผ ๊ฒฐ๊ด๊ฐ์ผ๋ก ๋ฆฌํดํ๋ค. result = heapq.heappop(heap) print(result) https://littlefoxdiary.tistory.com/m/3 [Python] ํ ์๋ฃ๊ตฌ์กฐ / ..
Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด ๊ฐ์ํ์ด get ๋ฉ์๋ ์ด์ฉํ๊ธฐ get ๋ฉ์๋๋ get(key,x) ๋ก ์ฌ์ฉํ์ค ์ ์์ต๋๋ค. ์ด๋ '๋์
๋๋ฆฌ์ key๊ฐ ์๋ ๊ฒฝ์ฐ, x๋ฅผ ๋ฆฌํดํด์ค๋ผ' ๋ผ๋ ์ฉ๋์
๋๋ค. ๋ฆฌ์คํธ๋ก๋ ํ์ด๋ณด๊ธฐ
Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด #์ฐธ๊ณ >>> list1 = [1, 2, 3, 4] >>> list2 = list1 >>> print(list1) [1, 2, 3, 4] >>> print(list2) [1, 2, 3, 4] list2๋ list1์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ์ ๋ณต์ฌํ ๊ฒ์ด๋ค. ์ฆ, ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐธ์กฐํ๊ธฐ ๋๋ฌธ์ list1์ด ์์ ๋๋ฉด list2๋ ๋์์ ์์ ๋๋ค. list1์ list2์ด ์๋ก ๋ค๋ฅธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐธ์กฐํ๋๋ก ํด์ฃผ๋ฉด ๋๋ค. ํ์ด์ฌ ๋ฆฌ์คํธ๋ฅผ ๋ค๋ฅธ ๋ฆฌ์คํธ์ ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ์ 4๊ฐ์ง๊ฐ ์๋ค. ๊ฐ์ ํ์ด
Algorithm/ํ์ด์ฌ ์ฝ๋ฉํ
์คํธ
๋์ ํ์ด ๊ฐ์ ํ์ด # any() ํจ์ - ๋ฐ๋ณต๊ฐ๋ฅํ ์๋ฃํ(iterable)์ ์ธ์๋ก ๋ฐ์ต๋๋ค. - ์ธ์๋ก ๋ฐ์ ์์์ค ํ๋๋ผ๋ True์ด๋ฉด True๋ฅผ ๋ฐํํฉ๋๋ค. - False๊ฐ ๋ช๊ฐ๋ ์๊ด์์ด ๋จ ํ๋๋ผ๋ True๋ฉด True ๋ฐํ. - ๋ชจ๋ ์์๊ฐ False ์ธ ๊ฒฝ์ฐ์๋ง False ๋ฐํ. - ์ธ์๋ก ๋ฐ์ ์๋ฃํ์ด ๋น์ด์ด๋ ๊ฒฝ์ฐ False๋ฅผ ๋ฐํํฉ๋๋ค. if any(15>x for x in a): print(“YES”) else: print(“NO”)