250x250
Link
๋‚˜์˜ GitHub Contribution ๊ทธ๋ž˜ํ”„
Loading data ...
Notice
Recent Posts
Recent Comments
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐Ÿค– ์ž๋ฃŒ๊ตฌ์กฐ & ์•Œ๊ณ ๋ฆฌ์ฆ˜ (5)

Data Science LAB

DFS (๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰) & BFS (๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰)

1. ๊ทธ๋ž˜ํ”„ ์ •์ (node)๊ณผ ๊ทธ ์ •์ ์„ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฐ„์„ (edge)์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ์ž๋ฃŒ๊ตฌ์กฐ์˜ ์ผ์ข…์„ ๋งํ•˜๋ฉฐ, ๊ทธ๋ž˜ํ”„๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ์€ ํ•˜๋‚˜์˜ ์ •์ ์œผ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์—ฌ ์ฐจ๋ก€๋Œ€๋กœ ๋ชจ๋“  ์ •์ ๋“ค์„ ํ•œ ๋ฒˆ์”ฉ ๋ฐฉ๋ฌธํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•จ -> DFS, BFS ๋ชจ๋‘ ๊ทธ๋ž˜ํ”„๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ๋ฒ• 2. DFS (Depth - First Search) : ๋‹ค์Œ ๋ถ„๊ธฐ๋กœ ๋„˜์–ด๊ฐ€๊ธฐ ์ „์— ํ•ด๋‹น ๋ถ„๊ธฐ๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ํƒ์ƒ‰ํ•˜๋Š” ๋ฐฉ์‹์„ ์˜๋ฏธํ•จ 1. ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒฝ์šฐ์— ์ด ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•จ 2. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS)์ด ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)๋ณด๋‹ค ์ข€ ๋” ๊ฐ„๋‹จํ•จ 3. ๊ฒ€์ƒ‰ ์†๋„ ์ž์ฒด๋Š” ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS)์— ๋น„ํ•ด์„œ ๋Š๋ฆผ ์Šคํƒ (stack) ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ -> ํ˜„์žฌ ๋ฐฉ๋ฌธํ•œ ๋…ธ๋“œ์— ์—ฐ๊ฒฐ๋œ ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•ด์•ผ ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐˆ ์ˆ˜ ์žˆ์Œ -..

[Python] Stack(์Šคํƒ) ์ด์ •๋ฆฌ

1. ์Šคํƒ์ด๋ž€ ? ๊ฐ€์žฅ ๋‚˜์ค‘์— ๋„ฃ์€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์žฅ ๋จผ์ € ๋นผ๋‚ผ ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋กœ Last In First Out(LIFO) ๋ฐฉ์‹, (ํ˜น์€ FILO : First In Last Out) => ํŒŒ์ด์ฌ์—์„œ๋Š” ์ด๋ฏธ ๋ฆฌ์ŠคํŠธ[]๋กœ ๊ตฌํ˜„๋˜์–ด์ ธ ์žˆ์Œ 2. ์Šคํƒ ๊ธฐ๋ณธ ์—ฐ์‚ฐ push() ์Šคํƒ์— ์›์†Œ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. pop() ์Šคํƒ ๊ฐ€์žฅ ์œ„์— ์žˆ๋Š” ์›์†Œ๋ฅผ ์‚ญ์ œํ•˜๊ณ  ๊ทธ ์›์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. peek() ์Šคํƒ ๊ฐ€์žฅ ์œ„์— ์žˆ๋Š” ์›์†Œ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. (์‚ญ์ œํ•˜์ง€๋Š” ์•Š๋Š”๋‹ค.) empty() ์Šคํƒ์ด ๋น„์–ด์žˆ๋‹ค๋ฉด 1, ์•„๋‹ˆ๋ฉด 0์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. 3. ์Šคํƒ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ from collections import deque dq=deque() # ๋ฑ ์ƒ์„ฑ dq.append() # ๋ฑ์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์›์†Œ ์‚ฝ์ž… dq.popleft() # ๊ฐ€์žฅ ์™ผ์ชฝ ์›์†Œ ๋ฐ˜..