-
Python
[Python] ํ๋ก๊ทธ๋๋จธ์ค - ํํ
https://school.programmers.co.kr/learn/courses/30/lessons/64065 ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ๐ก ์์ด๋์ด ๋ฌธ์์ด ์ฒ๋ฆฌํ๊ธฐ },{ ๊ธฐ์ค์ผ๋ก ์ฌ๋ผ์ด์ฑํ๊ธฐ , ๊ธฐ์ค์ผ๋ก ์ฌ๋ผ์ด์ฑํ๊ธฐ ๋ฆฌ์คํธ ๊ธธ์ด ๊ธฐ์ค์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ ์ ๋ต ๋ฐฐ์ด์ ํ๋์ฉ ์ถ๊ฐํ๊ธฐ ํ
์คํธ ์ผ์ด์ค s = "{{4,2,3},{3},{2,3,4,1},{2,3}}" result = [3, 2, 4, 1] ๐ ํ์ด def solution(s): answer = [] ### ๋ฌธ์์ด ์ฒ๋ฆฌํ๊ธฐ ### s1 = s.lstrip('{').rstri..
-
Python
[Python] DFS ๊น์ด ์ฐ์ ํ์
๐ DFS (Depth-First Search) ๊น์ด ์ฐ์ ํ์, ๊ทธ๋ํ์์ ๊น์ ๋ถ๋ถ์ ์ฐ์ ์ ์ผ๋ก ํ์ํ๋ ์๊ณ ๋ฆฌ์ฆ ๊ทธ๋ํ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ ๋
ธ๋(node)์ ๊ฐ์ (edge)๋ก ํํ ๊ทธ๋ํ ํ์ ํ๋์ ๋
ธ๋๋ฅผ ์์์ผ๋ก ๋ค์์ ๋
ธ๋๋ฅผ ๋ฐฉ๋ฌธํ๋ ๊ฒ ๋ ๋
ธ๋๊ฐ ๊ฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์๋ค๋ฉด โก ๋ ๋
ธ๋๋ ์ธ์ ํ๋ค ๊ทธ๋ํ๋ฅผ ํํํ๋ 2๊ฐ์ง ๋ฐฉ์ ์ธ์ ํ๋ ฌ (Adjacency Matrix) : 2์ฐจ์ ๋ฐฐ์ด๋ก ๊ทธ๋ํ ์ฐ๊ฒฐ ๊ด๊ณ ํํ ์ธ์ ๋ฆฌ์คํธ (Adjacency List) : ๋ฆฌ์คํธ๋ก ๊ทธ๋ํ ์ฐ๊ฒฐ ๊ด๊ณ ํํ ์ธ์ ํ๋ ฌ ๋ฐฉ์ 2์ฐจ์ ๋ฆฌ์คํธ๋ก ๊ตฌํ ์ฐ๊ฒฐ๋์ด ์์ง ์๋ ๋
ธ๋๋ผ๋ฆฌ๋ ๋ฌดํ์ ๋น์ฉ (999999999 ๋ฑ์ ํฐ ๊ฐ์ผ๋ก ์ด๊ธฐํ) INF = 99999999 graph = [ [0, 7, 5], [7, 0, INF], [5..
-
Python
[Python] ์ฌ๊ทํจ์
๐ก ์ฌ๊ทํจ์๋? ์๊ธฐ ์์ ์ ๋ค์ ํธ์ถํ๋ ํจ์ def recursive_function(): print('์ฌ๊ท ํจ์๋ฅผ ํธ์ถํฉ๋๋ค.') recursive_function() recursive_function() '์ฌ๊ท ํจ์๋ฅผ ํธ์ถํฉ๋๋ค' ๋ผ๋ ๋ฌธ์์ด์ ๋ฌดํํ ํธ์ถํ๋ค. โ๏ธ ์ฌ๊ทํจ์์ ์ข
๋ฃ ์กฐ๊ฑด ์ฌ๊ท ํจ์๋ฅผ ๋ฌธ์ ํ์ด์์ ์ฌ์ฉํ ๋๋ ์ฌ๊ท ํจ์๊ฐ ์ธ์ ๋๋ ์ง, ์ข
๋ฃ ์กฐ๊ฑด์ ๊ผญ ๋ช
์ํด์ผ ํ๋ค. def recursive_function(i): if i == 100 : return print(i, '๋ฒ์งธ ์ฌ๊ท ํจ์์์', i + 1, '๋ฒ์งธ ์ฌ๊ท ํจ์๋ฅผ ํธ์ถํฉ๋๋ค.') recursive_function(i + 1) print(i, '๋ฒ์งธ ์ฌ๊ท ํจ์๋ฅผ ์ข
๋ฃํฉ๋๋ค.') recursive_function(1) ์ปด..