์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- 0์ด๋์ด์๋๊ธธ
- BFS
- GCD
- ๋ค์ด๋๋ฏนํ๋ก๊ทธ๋๋ฐ
- dfs
- URLSession
- Swift
- SOPT
- Til
- ๊ณ ๋์ kit
- IOS
- binarySearch
- duno
- concurrency
- ์ด์งํ์
- GroupBy
- algoritm
- HAVIT
- ํ๋ก๊ทธ๋๋จธ์ค
- SwiftUI
- DynamicProgramming
- discardableResult
- SwiftUI ํํ ๋ฆฌ์ผ
- ๋์ ๊ณํ๋ฒ
- SQL
- ์ฐ์ํ์ค๋ถ๋ถ์์ด์ํฉ
- SwiftUI Tutorials
- algorithm
- APPJAM
- ๊ธฐ์ด๋ฌธ๋ฒ
- Today
- Total
๋ชฉ๋กAlgorithm/CodingTest - Python (12)
suvera-dev ๐ฅฆ
DFS์ BFS๋ฅผ ๋ค๋ฃจ๊ธฐ ์ .. ์ ๋ฉ๋ฆฌ ์๊ณ ์์๋ ์๋ฃ๊ตฌ์กฐ ๊ธฐ์ด ํํธ๊ฐ ์๊ธธ๋ ์ ๋ฆฌํด๋ด ๋๋ค ! โจ ํ์(Search)์ด๋ ? ๋ง์ ์์ ๋ฐ์ดํฐ ์ค์์ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๋ ๊ณผ์ - ํ๋ก๊ทธ๋๋ฐ์์๋ ๊ทธ๋ํ, ํธ๋ฆฌ ๋ฑ์ ์๋ฃ๊ตฌ์กฐ ์์์ ํ์์ ํ๋ ๋ฌธ์ ๋ฅผ ์์ฃผ ๋ค๋ฃจ๋๋ฐ ์ด ๋ ์๊ณ ๋ฆฌ์ฆ์ ์๋ฆฌ๋ฅผ ์ ๋๋ก ์ดํดํด์ผ ์ฝ๋ฉ ํ ์คํธ์ ํ์ ๋ฌธ์ ์ ํ์ ํ ์ ์์ต๋๋ค ! ๊ทธ๋ฐ๋ฐ,, DFS์ BFS ๋ฅผ ์ ๋๋ก ์ดํดํ๋ ค๋ฉด ๊ธฐ๋ณธ ์๋ฃ๊ตฌ์กฐ์ธ ์คํ๊ณผ ํ์ ๋ํ ์ดํด๊ฐ ์ ์ ๋์ด์ผ ํ๋ฌด๋ก ์ด์ง ์ ๋ฆฌํ๊ณ ๊ฐ๋๋ค ~ ๐ฟ ์๋ฃ๊ตฌ์กฐ๋? ๋ฐ์ดํฐ๋ฅผ ํํํ๊ณ ๊ด๋ฆฌํ๊ณ ์ฒ๋ฆฌํ๊ธฐ ์ํ ๊ตฌ์กฐ ! - ๊ธฐ์ด ๊ฐ๋ ์ธ ์คํ๊ณผ ํ์์ Push, Pop ๊ณผ ๊ฐ์ ํต์ฌ์ ์ธ ํจ์ ์ด ์ธ์๋ ์ค๋ฒํ๋ก, ์ธ๋ํ๋ก๋ฅผ ๊ณ ๋ฏผํด์ผํ๋ค. - ์ค๋ฒํ๋ก๋ ํน์ ํ ์๋ฃ๊ตฌ์กฐ..
๐ ์ฝ๋ฉํ ์คํธ์์ ๊ตฌํ์ด๋ ? ๋จธ๋ฆฟ์์ ์๋ ์๊ณ ๋ฆฌ์ฆ์ ์์ค์ฝ๋๋ก ๋ฐ๊พธ๋ ๊ณผ์ - ๊ตฌํ ์ ํ์ ๋ฌธ์ ๋ ํ์ด๋ฅผ ๋ ์ฌ๋ฆฌ๋ ๊ฒ์ ์ฝ์ง๋ง ์์ค์ฝ๋๋ก ์ฎ๊ธฐ๊ธฐ ์ด๋ ค์ด ๋ฌธ์ ๋ฅผ ์๋ฏธํ๋ค ! ex) ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋จํ๋ฐ ์ฝ๋๊ฐ ์ง๋์น ๋งํผ ๊ธธ์ด์ง๋ ๋ฌธ์ , ํน์ ์์์ ์๋ฆฌ๊น์ง ์ถ๋ ฅํด์ผํ๋ ๋ฌธ์ , ๋ฌธ์์ด์ด ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ก์ ๋ ํ ๋ฌธ์ ๋จ์๋ก ๋์ด์ ๋ฆฌ์คํธ์ ๋ฃ์ด์ผํ๋ ๋ฌธ์ ๋ฑ ๐๐ป ์์ ํ์ , ์๋ฎฌ๋ ์ด์ ์ ํ์ ๋ชจ๋ ๊ตฌํ ์ ํ์ผ๋ก ๋ฌถ์ด์ ์ค๋ช ํ ์์ ! 1. ์์ ํ์ : ๋ชจ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ์ฃผ์ ์์ด ๋ค ๊ณ์ฐํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ 2. ์๋ฎฌ๋ ์ด์ : ๋ฌธ์ ์์ ์ ์ํ ์๊ณ ๋ฆฌ์ฆ์ ํ๋จ๊ณ์ฉ ์ฐจ๋ก๋๋ก ์ง์ ์ํํ๋ ๋ฌธ์ ๐ ๊ตฌํ ์ ๊ณ ๋ คํด์ผ ํ ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ ์ฌํญ ๐ ํ์ด์ฌ์์ ๋ฆฌ์คํธ ํฌ๊ธฐ ํ์ด์ฌ์์ ์ฌ๋ฌ ๊ฐ์ ๋ณ์๋ฅผ ์ฌ์ฉํ ๋๋ ๋ฆฌ์คํธ..
์ค์ ๋ฌธ์ ํ์ด 2๏ธโฃ ๋ฌธ์ 2 : ์ซ์ ์นด๋ ๊ฒ์ - ์ฌ๋ฌ ๊ฐ์ ์ซ์ ์นด๋ ์ค์์ ๊ฐ์ฅ ๋์ ์ซ์๊ฐ ์ฐ์ธ ์นด๋ ํ ์ฅ์ ๋ฝ๋ ๊ฒ์ - ๊ฒ์ ๋ฃฐ์ ๋ค์๊ณผ ๊ฐ๋ค. - 1. ์ซ์๊ฐ ์ฐ์ธ ์นด๋๋ค์ด N x M ํํ๋ก ๋์ฌ ์๋ค. ์ด๋ N์ ํ์ ๊ฐ์๋ฅผ ์๋ฏธํ๋ฉฐ, M์ ์ด์ ๊ฐ์๋ฅผ ์๋ฏธํ๋ค. - 2. ๋จผ์ ๋ฝ๊ณ ์ ํ๋ ์นด๋๊ฐ ํฌํจ๋์ด ์๋ ํ์ ์ ํํ๋ค - 3. ๊ทธ ๋ค์ ์ ํ๋ ํ์ ํฌํจ๋ ์นด๋๋ค ์ค ๊ฐ์ฅ ์ซ์๊ฐ ๋ฎ์ ์นด๋๋ฅผ ๋ฝ์์ผ ํ๋ค - 4. ๋ฐ๋ผ์ ์ฒ์์ ์นด๋๋ฅผ ๊ณจ๋ผ๋ผ ํ์ ์ ํ ํ ๋, ์ดํ์ ํด๋น ํ์์ ๊ฐ์ฅ ์ซ์๊ฐ ๋ฎ์ ์นด๋๋ฅผ ๋ฝ์ ๊ฒ์ ๊ณ ๋ คํ์ฌ ์ต์ข ์ ์ผ๋ก ๊ฐ์ฅ ๋์ ์ซ์์ ์นด๋๋ฅผ ๋ฝ์ ์ ์๋๋ก ์ ๋ต์ ์ธ์์ผ ํ๋ค. ๐ฅฆ ๋ฌธ์ ํด๊ฒฐ ์์ด๋์ด : ๊ฐ ํ๋ง๋ค ๊ฐ์ฅ ์์ ์๋ฅผ ์ฐพ์ ๋ค์ ๊ทธ ์ ์ค์์ ๊ฐ์ฅ ..
์ฝ๋ฉํ ์คํธ์์ ๊ฐ์ฅ ์ถ์ ๋น๋๊ฐ ๋์ ๋ฌธ์ ๋ ๊ทธ๋ฆฌ๋, ๊ตฌํ, DFS/BFS ๋ฅผ ํ์ฉํ ํ์ ๋ฌธ์ ๋ผ๊ณ ํ๋ค! ์์๋๋ก ํฌ์คํ ํ ์์ ์ด๊ณ , ์ค๋์ ๊ธฐ์ด ๊ทธ๋ฆฌ๋ ๋ฌธ์ ์ ๋ํด ๋ค๋ค๋ณด๊ณ ์ ํ๋ค ๐ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ : ํ์๋ฒ, ํ์ฌ ์ํฉ์์ ์ง๊ธ ๋น์ฅ ์ข์ ๊ฒ๋ง ๊ณ ๋ฅด๋ ๋ฐฉ๋ฒ - ์ผ๋ฐ์ ์ผ๋ก ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์ํ ์ต์ํ์ ์์ด๋์ด๋ฅผ ๋ ์ฌ๋ฆด ์ ์๋ ๋ฅ๋ ฅ์ ์๊ตฌ - ์ ๋น์ฑ ๋ถ์์ด ์ค์ : ๋จ์ํ ๊ฐ์ฅ ์ข์๋ณด์ด๋ ๊ฒ์ ๋ฐ๋ณต์ ์ผ๋ก ์ ํํด๋ ์ต์ ์ ํด๋ฅผ ๊ตฌํ ์ ์๋์ง ๊ฒํ - ์ผ๋ฐ์ ์ธ ์ํฉ์์ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ต์ ์ ํด๋ฅผ ๋ณด์ฅํ ์ ์์ ๋๊ฐ ๋ง์ - ํ์ง๋ง, ์ฝ๋ฉํ ์คํธ์์ ๋๋ถ๋ถ์ ๊ทธ๋ฆฌ๋ ๋ฌธ์ ๋ ํ์๋ฒ์ผ๋ก ์ป์ ํด๊ฐ ์ต์ ์ ํด๊ฐ ๋๋ ์ํฉ์์ ์ด๋ฅผ ์ถ๋ก ํ ์ ์์ด์ผ ํ๋ฆฌ๋๋ก ์ถ์ ๋จ ๐ต๋ํ์ ์ธ ๊ทธ๋ฆฌ๋ ์๊ณ ..