- js
- C++
- ์นด์นด์ค ์ฝํ
- nestjs
- DP
- ๋นํธ๋ง์คํน
- ๋์ ํ๋ก๊ทธ๋๋ฐ
- ์ํฐ๋
- Union-Find
- ์ฌ๊ท
- ํ๋ก๊ทธ๋๋จธ์ค
- ์ฌ๋ผ์ด๋ฉ ์๋์ฐ
- LCs
- ๋นํธ๋งต
- ์ด๋ถํ์
- ๋ค์ต์คํธ๋ผ
- DFS
- ์์ฝ๋
- go
- ํ๋ฆฌ์จ๋ณด๋ฉ
- ์น๋ฆฐ์ด
- ๋ฐฑ์๋ ํ๋ฆฌ์จ๋ณด๋ฉ
- ์๊ณ ๋ฆฌ์ฆ
- ํธ๋ฆฌ
- ๋ฐฑ์ค
- ๊ฐ์ฅ๊ฐ๊น์ด๊ณตํต์กฐ์
- Python
- golang
- BFS
- ์นด์นด์ค2021
- Today
- Total
๋ชฉ๋ก๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (122)
Hello Ocean! ๐ผ
ํ์๋ฌธ์ ? ์ ์ฅ๋ ๋ฐ์ดํฐ๋ค ์ค์ ์ํ๋ ๊ฐ์ ์ฐพ๋ ๋ฌธ์ ์ด๋ค. 1. ์ ํ ํ์ ์๊ณ ๋ฆฌ์ฆ (Linear Search Algorithm) ๋งจ ์์ด๋, ๋งจ ๋ค๋ถํฐ ์์๋๋ก ํ๋ํ๋ ์ฐพ์๋ณด๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ฐ์ฅ ๋จ์ํ๊ณ ๊ฐ๋จํ ํ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋งจ ๋๋ถํฐ ํ๋ํ๋ ์ํ๋ ๊ฐ์ ์ฐพ์๋ณธ๋ค. ์ํ๋ ๊ฐ์ ์ฐพ์ผ๋ฉด, ํ์์ ์ข ๋ฃํ๋ค. ์์ 5๋ฅผ ์ฐพ์ ๋, ๋งจ ์ผ์ชฝ์ ์๋ 1๋ถํฐ ์์ํด์ ํ๋์ฉ ํ์ํ๋ค. ์๊ฐ ๋ณต์ก๋ ๊ธธ์ด n์ง๋ฆฌ์ ๋ฆฌ์คํธ๋ฅผ ํ์ํ ๋, ์ต์ ์ ๊ฒฝ์ฐ ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ ์์๊ฐ ์ ๋ต์ธ ๊ฒฝ์ฐ : 1๋ฒ ์ต์ ์ ๊ฒฝ์ฐ ๋ฆฌ์คํธ์ ๋งจ ๋ง์ง๋ง ์์๊ฐ ์ ๋ต์ด๊ฑฐ๋, ๋ฆฌ์คํธ์ ์ ๋ต์ด ์์ ๋ : n๋ฒ ๋ฐ๋ผ์ O(n)์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋ค. 2. ์ด์ง ํ์ ์๊ณ ๋ฆฌ์ฆ (Binary Search Algorithm) ์ค๊ฐ์ง์ ์ ๊ธฐ์ค์ผ..
H-index ์ถ์ฒ : https://programmers.co.kr/learn/courses/30/lessons/42747 ๋ฌธ์ ์ค๋ช H-Index๋ ๊ณผํ์์ ์์ฐ์ฑ๊ณผ ์ํฅ๋ ฅ์ ๋ํ๋ด๋ ์งํ์ ๋๋ค. ์ด๋ ๊ณผํ์์ H-Index๋ฅผ ๋ํ๋ด๋ ๊ฐ์ธ h๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ์ํค๋ฐฑ๊ณผ1์ ๋ฐ๋ฅด๋ฉด, H-Index๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํฉ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ nํธ ์ค, h๋ฒ ์ด์ ์ธ์ฉ๋ ๋ ผ๋ฌธ์ด hํธ ์ด์์ด๊ณ ๋๋จธ์ง ๋ ผ๋ฌธ์ด h๋ฒ ์ดํ ์ธ์ฉ๋์๋ค๋ฉด h์ ์ต๋๊ฐ์ด ์ด ๊ณผํ์์ H-Index์ ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์ธ์ฉ ํ์๋ฅผ ๋ด์ ๋ฐฐ์ด citations๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๊ณผํ์์ H-Index๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์๋ 1..
์ ๋ ฌ (Sort) n๊ฐ์ ์ซ์๊ฐ ์ฃผ์ด์ก์ ๋, ์ด๋ฅผ ํน์ ํ ๊ธฐ์ค(์ค๋ฆ์ฐจ์, ๋ด๋ฆผ์ฐจ์ ๋ฑ)์ ๋ง๊ฒ ์ ๋ ฌํ์ฌ ์ถ๋ ฅํ๋ ์๊ณ ๋ฆฌ์ฆ ๋งค์ฐ ๋ค์ํ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด ์กด์ฌํ๊ณ , ๊ฐ ์๊ณ ๋ฆฌ์ฆ๋ง๋ค ์ํ์๊ฐ์ด ๋ค๋ฅด๋ค. ์ฝ์ ์ ๋ ฌ k๋ฒ์งธ ์์๋ฅผ 1๋ถํฐ k-1๊น์ง์ ์ซ์์ ๋น๊ตํด ์ ์ ํ ์์น์ ๋ผ์ ๋ฃ๊ณ , ๊ทธ ๋ค์ ์๋ฃ๋ฅผ ํ ์นธ์ฉ ๋ค๋ก ๋ฐ์ด๋ด๋ ๋ฐฉ์. ์๋ฃ๊ตฌ์กฐ์ ๋ฐ๋ผ์ ๋ค๋ก ๋ฐ์ด๋ด๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด ํด ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ญ์์ผ๋ก ์ ๋ ฌ๋์ด์์ ๊ฒฝ์ฐ์ ๋งค์ฐ ์ค๋๊ฑธ๋ฆฐ๋ค. ๋ฐ๋ฉด์ ์ด๋ฏธ ์ ๋ ฌ๋์ด ์๋ ์๋ฃ๊ตฌ์กฐ์ ์๋ฃ๋ฅผ ํ๋์ฉ ์ฝ์ /์ญ์ ํ๋ ๊ฒฝ์ฐ์๋ ์ต๊ณ ์ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด ๋๋ค. ๊ตฌํ์ด ๋งค์ฐ ์ฝ๋ค. ์ด๋ฏธ์ง ์ถ์ฒ - ๋๋ฌด์ํค ์ด์ง ์ฝ์ ์ ๋ ฌ ์ด์ง ํ์์ ํ์ฉํด์ ์๋ก์ด ์์๊ฐ ์์นํ ๊ณณ์ ๋ฏธ๋ฆฌ ์ฐพ์์ ์ ๋ ฌํ๋ ๋ฐฉ์ ์์ ํฌ๊ธฐ ๋น๊ตํ๋ ๋ถ๋ถ์..
๋นํธ ์กฐ์ ๋นํธ ์ฐ์ฐ์ AND ๋ ๋ค 1์ด๋ฉด 1, ๋ ์ค ํ๋๋ผ๋ 0์ด๋ฉด 0์ด๋ค. 1010 AND 1110 = 1010 ์ฐ์ฐ์ : & OR ๋ ์ค ํ๋๋ผ๋ 1์ด๋ฉด 1, ๋๋ค 0์ด๋ฉด 0์ด๋ค. 1010 OR 1110 = 1110 ์ฐ์ฐ์ : | NOT ๋ชจ๋ bit๊ฐ์ ๋ฐ๋๋ก ๋ฐ๊พผ๋ค NOT ( 1010 ) = 0101 ์ฐ์ฐ์ : ~ XOR ๊ฐ์ด ๊ฐ์ผ๋ฉด 0, ๋ค๋ฅด๋ฉด 1์ด๋ค. 1010 XOR 1110 = 0100 ์ฐ์ฐ์ : ^ ๋นํธ ์ํํธ ์ฐ์ ์ฐ์ธก ์ํํธ ๊ฐ์ 2๋ก ๋๋ ๊ฒ๊ณผ ๊ฐ๋ค. ์ฐ์ฐ์ : >> ๋ถํธ ๋นํธ๋ ๋ฐ๋์ง ์์. ๋ ผ๋ฆฌ ์ฐ์ธก ์ํํธ ์ผ๋ฐ์ ์ผ๋ก ๋นํธ๋ฅผ ์ฎ๊ธธ ๋ ์ฒ๋ผ ๋์ํ๋ค. ์ฐ์ฐ์ : >>> ๋นํธ๋ฅผ ์ฐ์ธก์ผ๋ก์ฎ๊ธด ํ์, ์ต์์ ๋นํธ์ 0์ ๋ฃ๋๋ค. ์ถ๊ฐ ์ ๋ณด 0s : ๋ชจ๋ bit๊ฐ 0 1s : ๋ชจ๋ bi..
1.ํธ๋ฆฌ, ๊ทธ๋ํ ๋น์ ํ ๊ตฌ์กฐ ์ ํ๊ตฌ์กฐ๋ ์๋ฃ๋ฅผ ์ ์ฅํ๊ณ ๊บผ๋ด๋ ๊ฒ์ ์ด์ ์ด ๋ง์ถฐ์ ธ ์๊ณ , ๋น์ ํ๊ตฌ์กฐ๋ ํํ์ ์ด์ ์ด ๋ง์ถฐ์ ธ ์์ต๋๋ค. ํธ๋ฆฌ ํธ๋ฆฌ์ ๊ตฌ์ฑ ์์ Root Node : ํธ๋ฆฌ ๊ตฌ์กฐ์์ ์ต์์์ ์กด์ฌํ๋ ๋ ธ๋ (A) Node : ํธ๋ฆฌ์ ๊ตฌ์ฑ์์์ ํด๋นํ๋ ์์ (A,B,C,D,E,F,G) Edge : ๋ ธ๋์ ๋ ธ๋๋ฅผ ์ฐ๊ฒฐํ๋ ์ Terminal Node(Leaf Node) : ํธ๋ฆฌ์ ๋งจ ๋ฐ์ ์๋ ์์์ ๊ฐ์ง์ง ์๋ ๋ ธ๋ Sub-Tree : ์ ์ฒด ํธ๋ฆฌ์ ์ํ๋ ์์ ํธ๋ฆฌ Level : ํธ๋ฆฌ์์ ๊ฐ ์ธต๋ณ๋ก ์ซ์๋ฅผ ๋งค๊น (root node = level 0) Height : ํธ๋ฆฌ์ ์ต๊ณ ๋ ๋ฒจ ํธ๋ฆฌ์ ์ข ๋ฅ ์ด์งํธ๋ฆฌ (binary tree) ์ด๋ค ํ ๋ ธ๋๊ฐ 2๊ฐ ์ดํ์ ์์๋ง์ ๊ฐ์ง๋ ํธ๋ฆฌ ํฌํ์ด์งํธ๋ฆฌ ..
๋ฐฐ์ด ์ ์ ๋ฐฐ์ด ์ฐ๋ฆฌ๊ฐ ์๊ฐํ๋ ์ผ๋ฐ์ ์ธ ๋ฐฐ์ด. ํฌ๊ธฐ๊ฐ ๊ณ ์ ๋์ด ์๋ค. ๋์ ๋ฐฐ์ด (vector) ์ค๊ฐ์ ๊ฐ์ ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ํ ์ ์๋ค. https://blockdmask.tistory.com/70 ์ด ๋งํฌ์์ ๋ฐฐ์ด์ ์ฌ์ฉ๋ฒ์ ์์ธํ๊ฒ ๋ฐฐ์ธ ์ ์๋ค. ๋ฌธ์์ด ๋ฐฐ์ด ์ฌ๋ฌ ๊ธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์ ๊ทธ๋ฃน์ ํ๋์ ์๋ฃ๋ก ์ทจ๊ธํ์ฌ ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์์ ์ผ๋ก ์ ์ฅํ๋ ์๋ฃ ํ์. https://blockdmask.tistory.com/338 ์ฐ๊ฒฐ๋ฆฌ์คํธ ์ฐ๊ฒฐ ์๋ฃ๊ตฌ์กฐ๋ ์์ฐจ ์๋ฃ๊ตฌ์กฐ (ex๋ฐฐ์ด)๊ณผ ๋ฌ๋ฆฌ ์์์ ๋ ผ๋ฆฌ์ ์ธ ์์์ ๋ฌผ๋ฆฌ์ ์ธ ์์๊ฐ ์ผ์นํ์ง ์์๋ ๋๋ค. ์ฐ์ํ ๋ฌผ๋ฆฌ์ฃผ์์ ์ํด ์์ ์์๋ฅผ ํํํ๋ ๊ฒ์ด ์๋๋ผ, ๊ฐ ์์์ ์ ์ฅ๋์ด ์๋ ๋ค์ ์์์ ์ฃผ์(๋งํฌ)์ ์ํด ์์๊ฐ ์ฐ๊ฒฐ๋๋ ๊ตฌํ ๋ฐฉ์์ด๊ธฐ ๋๋ฌธ์ด๋ค. ๋ ธ๋ ๋จ..