์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- position
- useRef
- ์ฝ๋ฉํ ์คํธ
- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ก๊ทธ๋๋จธ์ค
- fetch API
- Flex
- float
- ๋ธ๋ก๊ทธ
- CSS
- Gatsby
- Props
- useEffect
- ๋ฐ๋ธ์ฝ์ค
- REACT
- history api
- ํ๋ก ํธ์๋
- ๋ฐ๋ธ์ฝ์ค3๊ธฐ
- ์๋ฐ์คํฌ๋ฆฝํธ
- Today
- Total
๋ชฉ๋ก๐ Language & CS knowledge/Algorithm & Data structure (21)
Daehyunii's Dev-blog

14.1 ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ(Doubly Linked Lists) ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ๋ณ๋ฐ ๋ค๋ฅผ๊ฒ ์๋ค. ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ ๋ ธ๋๋ค์ ์ฐ๊ฒฐ์ด ํ๋์ ๋ฐฉํฅ์ผ๋ก๋ง ์ด์ด์ ธ ์์๋ค๋ฉด ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ ๋ ธ๋์ ๋ ธ๋๊ฐ ์๋ก ์๋ฐฉํฅ์ผ๋ก ์ด์ด์ ธ ์๋ ์๋ฃ ๊ตฌ์กฐ์ด๋ค. ์ฆ ๊ฐ ๋ ธ๋์ ๋ฐฉํฅ ์ง์๊ฐ ๋ ๊ฐ์ฉ ์๋ค๋ ๊ฒ์ด๋ค. ๋ํ ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ๋นํด ์๋ฐฉํฅ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์์ด ๋ ธ๋์ ์ ๊ทผํ ๋ ํ ์ผ ๋๋ ํค๋ ์ค์ ๋ ๊ฐ๊น์ด ๊ณณ์ ํํด์ ์ ๊ทผํ ์ ์๋ค. ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ์ ์ฒด์ ์ธ ๊ตฌ์กฐ๋ ๊ฑฐ์ ๋๊ฐ๋ค. ๋ค๋ง ๋ฐฉํฅ์ ์์ชฝ์ผ๋ก ๋ค ์ด์ด์ผ ํ๋ค๋ ๊ฒ์ ์ฃผ์ํ๋ฉด ๋๋ค. 14.2 ๋ ธ๋์ ์ด์ค ์ฐ๊ฒฐ ๋ฆฌ์คํธ ํด๋์ค ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ๋ค๋ฅธ ์ ์ prev ํ๋กํผํฐ๋ฅผ ์ถ๊ฐํ ๊ฒ ๋ฐ์ ์๋ค. class Node{ con..

13.1 ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ์๊ฐ(Singly Linked Lists) ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ์ ํ ์ข ๋ฅ๋ก ๋ฌธ์์ด, ์ซ์ ๋ฑ ๋ฌด์์ด๋ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃ ๊ตฌ์กฐ๋ค. ๋จ์ผ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ ๋ฐ์ดํฐ์ ๋ฐ์ดํฐ์ ์ฐ๊ฒฐ์ด ํ ์ชฝ ๋ฐฉํฅ์ผ๋ก๋ง ์ฐ๊ฒฐ๋๋ ์๋ฃ ๊ตฌ์กฐ๋ค. ๋ฐฐ์ด์ฒ๋ผ ์์์ ๋ฐ๋ผ ๋ค์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค. ํ์ง๋ง ๋ฐฐ์ด๊ณผ์ ํฐ ์ฐจ์ด์ ์ด ์๋ค. ๋ฐฐ์ด์ ๊ฒฝ์ฐ ๊ฐ ๋ฐ์ดํฐ ์์๋ค์ ์์น๊ฐ ์ง์ ๋๋ค. ์ฆ, ๋ฐฐ์ด์ ์ธ๋ฑ์ค๊ฐ ๋ถ์ฌ๋๋ค. ์๋ก์ด ๋ฐ์ดํฐ ์์๋ฅผ ์ถ๊ฐํ ๋ ๋ง๋ค ๋ฐฐ์ด์ ๊ทธ ์์น์ ๋ฐ๋ฅธ ์ธ๋ฑ์ค๊ฐ ์ฃผ์ด์ง๋ค. ๋ฐ๋ฉด ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ค์ ๋ค์ ๋ฐ์ดํฐ ์์๋ฅผ ๊ฐ๋ฆฌํค๋ ์ธ๋ฑ์ค ์์ด ๊ทธ๋ฅ ๋ค์์ ๋ฐ์ดํฐ ์์๋ค๋ก ๊ตฌ์ฑ๋๋ฉฐ ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ธฐ ์ํด ์ฌ์ฉํ ์ธ๋ฐ์ค๋ ์๋ค. ๋ฐ๋ผ์ ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ค์ ๋ค์์ ๋ ธ๋๋ค๋ก ๊ตฌ์ฑ๋๊ณ ๊ฐ ..

11.1 ํต ์ ๋ ฌ ์๊ฐ ํต ์ ๋ ฌ์ ๋งค์ฐ ๋น ๋ฅด๊ณ ํจ์จ์ ์ธ ์ ๋ ฌ ๋ฐฉ์์ด๋ค. ์ฌ๊ท๋ฅผ ํตํด ํด๊ฒฐํ๊ธฐ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ ์ค ํ๋์ด๋ค. ์ฐ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ 0๊ฐ ๋๋ 1๊ฐ์ ํญ๋ชฉ์ด ๋จ์ ๋๊น์ง ๋ถํ ํ์ฌ ๊ฐ๋ณ์ ์ผ๋ก ํผ๋ฒ๊ฐ๋ ์ ํตํด ์ ๋ ฌ๋๋ ๋ฐฉ์์ด๋ค. ์ฆ ๋น๊ตํ๋ ์์๊ฐ ํ๋๋ง ์๋ค๋ฉด ์ด๋ฏธ ์ ๋ ฌ์ด ๋ ๊ฒ์ด๋ค. ํต ์ ๋ ฌ์ ์์ด์ ๊ฐ์ฅ ์ค์ํ ๊ฐ๋ ์ ํผ๋ฒ์ด๋ค. ํต ์ ๋ ฌ์ ํผ๋ฒ ํฌ์ธํธ๋ผ ๋ถ๋ฆฌ๋ ๋จ์ผ ์์๋ฅผ ์ ํํ๊ณ ์ด๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ ์ ์ํํ๋ค. ์๋ฅผ ๋ค์ด ํผ๋ฒ ํฌ์ธํธ๋ฅผ ๊ฐ์ด๋ฐ ์๋ ์์๋ก ์ ํ๋ค๋ฉด ํ ์ผ์ ํด๋น ์ซ์๋ณด๋ค ์์ ์ซ์๋ฅผ ์ผ์ชฝ์ผ๋ก ์ฎ๊ธฐ๊ณ ํผ๋ฒ ํฌ์ธํธ๋ณด๋ค ํฐ ์ซ์๋ ์ค๋ฅธ์ชฝ์ผ๋ก ์ฎ๊ธฐ๋ ๊ฒ์ด๋ค. ์ด๋ ๊ฒ ๋๋ค๋ฉด ํผ๋ฒ ์ซ์ ํ๋๋งํผ์ ์ฌ๋ฐ๋ฅธ ์์น์ ์ ๋ ฌ์ด ๋๋ค. ์ค์ํ๊ฒ์ ๊ทธ ํผ๋ฒ ํฌ์ธํธ ์ซ์ ํ๋๋ง ์ณ๋ฐ๋ฅธ ์์น์ ..

์ง๊ธ๊น์ง ๊ณต๋ถํ๋ ์ ๋ ฌ๋ค์ ์ผ๋ฐ์ ์ธ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด์๋ค. ์ด์ ๋ ๋ณด๋ค ํจ์จ์ ์ธ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ๋ค์ ๋ํ ์ค๋ช ์ด๋ค. ํฉ๋ณ ์ ๋ ฌ์ ์ ํํ๊ฒ ๋งํ๋ฉด ๋ถํด์ ํฉ๋ณ์ ํ๋ ๊ณผ์ ์ผ๋ก ์ ๋ ฌ์ด ์ด๋ค์ง๋ค. ํฉ๋ณ ์ ๋ ฌ์ 0๊ฐ์ ์์ ๋๋ 1๊ฐ์ ์์๋ ์ด๋ฏธ ์ ๋ ฌ์ด ๋์ด์๋ค๋ ๊ฒ์ ํ์ฉํ๋ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์ฆ ์ ๋ ฌ๋์ด ์์ง ์์ ๋ฐฐ์ด์ ์์๊ฐ 1๊ฐ ๋๋ 0๊ฐ๊ฐ ๋ ๋๊น์ง ๋ฐฐ์ด์ ๋ถํ ํ ํ ๋ค์ ์ ๋ ฌํ๋ฉด์ ํฉ๋ณํ๋ ๊ฒ์ด๋ค.(1๊ฐ ๋๋ 0๊ฐ์ ์์๋ฅผ ๊ฐ์ง๋ ๋ฐฐ์ด์ ์ด๋ฏธ ์ ๋ ฌ์ด ๋์ด ์๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค.) ์ฐ์ ํฉ๋ณ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํํ๊ธฐ ์ํด์๋ ์ ๋ ฌ๋์ด ์๋ ๋ ๋ฐฐ์ด์ ํฉ๋ณํ๋ ๋ฐฉ๋ฒ์ ์์์ผ ํ๋ค. 10.1 ์ ๋ ฌ๋ ๋ ๋ฐฐ์ด ํฉ๋ณ ์์ฌ์ฝ๋ 1. ์ฐ์ ๋ฐฐ์ด ๋ ๊ฐ๋ฅผ ์ธ์๋ก ๋ฐ๋ ํจ์๋ฅผ ์ ์ํ๊ณ , ๋ง์ง๋ง์ ๋ฐํํ ๋น ๋ฐฐ์ด์ ..

9.1 ์ฝ์ ์ ๋ ฌ ์๊ฐ ์ฝ์ ์ ๋ ฌ์ด๋, ๋ฐฐ์ด์ ์ผ์ชฝ ๋์ ์ซ์๋ฅผ ์ ๋ ฌ์ด ๋๋ฌ๋ค๊ณ ๊ฐ์ฃผํ๋ค. ๊ทธ๋ฆฌ๊ณ ์์ง ์์ ํ์ง ์์ ์ซ์ ์ค์์ ์ผ์ชฝ ๋์ ์๋ ์ซ์๋ฅผ ๊บผ๋ด์ ์ผ์ชฝ์ ์๋ ์์ ์ด ๋๋ ์ซ์์ ๋น๊ตํ๋ค. ์ผ์ชฝ์ ์ซ์๊ฐ ํฌ๋ค๋ฉด ๋ ๊ฐ์ ์ซ์๋ฅผ ๋ฐ๊พผ๋ค. ์ด ์์ ์ ์์ ๋ณด๋ค ์์ ์ซ์๊ฐ ๋ํ๋๊ฑฐ๋ ์ผ์ชฝ ๋์ ๋๋ฌํ ๋๊น์ง ๋ฐ๋ณตํ์ฌ ์ ๋ ฌํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ง ๊ทธ๋๋ก ์ฝ์ ์ ๋ ฌ์ ๊ฐ์ฅ ์ผํธ์ ๊ฐ์ ์ ๋ ฌ์ด ์๋ฃ๋์ด ์๋ ๊ฐ์ผ๋ก ๋ณด๊ณ ๋๋จธ์ง ์์๋ค์ ํ๋์ฉ ๊บผ๋ด์ ์ ๋ ฌ๋์ด ์๋ค๊ณ ๊ฐ์ ํ ์ผํธ์ ์์๋ค๊ณผ ๋น๊ตํ์ฌ ์ ๋ ฌ๋์ด์ผ ํ๋ ์์น์ ์ฝ์ ํ๋ ๋ฐฉ์์ด๋ค. ์์ฌ์ฝ๋ 1. ๋ฐฐ์ด์ ๋ ๋ฒ์งธ ์์๋ฅผ ์ ํํ์ฌ ๋ฐ๋ณต์ ์์ํ๋ค.(์๋ํ๋ฉด ๊ฐ์ฅ ์์ ์๋ ์์๋ ์ ๋ ฌ์ด ์๋ฃ๋์๋ค๊ณ ๊ฐ์ฃผํ๊ธฐ ๋๋ฌธ์ด๋ค.) 2. ๊ทธ ๋ค์ ๋ ๋ฒ์งธ ์์๋ฅผ ..

8.1 ์ ํ ์ ๋ ฌ ์๊ฐ ์ ํ ์ ๋ ฌ์ ๋ฒ๋ธ ์ ๋ ฌ๊ณผ ๋น์ทํ์ง๋ง ์ฝ๊ฐ์ ์ ๋ ฌ ๋ฐฉ์์ ์ฐจ์ด์ ์ด ์๋ค. ๋ง์ ์ค์์ ํตํด์ ๊ฐ์ฅ ํฐ ๊ฐ์ ๋งจ ๋ค์ ์์น์ํค๋ ๋์ , ํ ๋ฒ์ ๋ชจ๋ ์์๋ฅผ ๋น๊ตํ์ฌ ๊ฐ์ฅ ์์ ๊ฐ์ ๋งจ ์์ ์์น์ํจ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ์์๋ฅผ ์ ์ธํ ๋๋จธ์ง ์์๋ค์ ๋ค ๋น๊ตํ์ฌ ๊ฐ์ฅ ๊ทธ ์ค ๊ฐ์ฅ ์์ ๊ฐ์ ์ฒซ ๋ฒ์งธ์ ์ ๋ ฌ๋ ์์ ๋ค์์ ์์น์ํจ๋ค. ์ฆ ๋ฐฐ์ด๋ด์ ์์๋ค ์ค ์ต์๊ฐ์ ์ฐพ์ ๋ง์ง๋ง์ ๋ฐ๊พธ์ด ๋งจ ์์ ์ ๋ ฌ์ํจ๋ค. ์ฐ์ ๋น๊ต๋ฅผ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋น๊ตํด์ผ ํ ์์๋ค ์ค ๊ฐ์ฅ ์์ ์๋ ๊ฐ์ ์ต์๊ฐ์ผ๋ก ์ก๊ณ ๊ทธ ๋ค์ ์์๋ค๊ณผ์ ๋น๊ต๋ฅผ ํตํด ์ต์๊ฐ์ ์ฐพ๋๋ค. ์ด๋ ๊ฒ ์ฐพ์ ์ต์๊ฐ์ ๋ฐฐ์ด์ ๋งจ ์์ ์ ๋ ฌ์ํค๊ณ , ๊ทธ ๋ค์ ๋ฃจํ์์๋ ์ ์ธ์ํค๊ณ ๋๋จธ์ง๋ฅผ ๋น๊ตํ๋ค. ์ด ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ์ ๋ ฌํ๋ ๋ฐฉ์์ด ์ ํ ์ ๋ ฌ์ด..

์ง๊ธ ๋ถํฐ๋ ์ ๋ ฌ์ ๋ํด์ ๊ณต๋ถํ๋ ค๊ณ ํ๋ค. ์ ๋ ฌ์ด๋ ๋ง ๊ทธ๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ผ์ ํ ๊ธฐ์ค์ ๊ฐ์ง๊ณ ์ฌ๋ฐฐ์ดํ๋ ๊ณผ์ ์ ๋งํ๋ค. ์ ๋ ฌ์ ํ๋ ๋ฐฉ์์๋ ๋ง์ ๋ฐฉ๋ฒ์ด ์กด์ฌํ๊ณ ๊ฐ๊ฐ์ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ๋ง๋ค ์ฅ/๋จ์ ์ ์ง๋๊ณ ์๋ค. ๋ํ ์ ๋ ฌ์ ํ ์ ์๋ ๋ง์ ๋ฉ์๋๋ค์ด ์กด์ฌํ๋ค. ๊ทธ๋ฌํ ๋ฉ์๋๋ค์ ์ ํ์ฉํ๋๊ฒ๋ ์ค์ํ๊ฒ ์ง๋ง, ๊ทธ ๋์ ์๋ฆฌ๋ฅผ ์๋๊ฒ ๋ํ ๊ต์ฅํ ์ค์ํ ์ผ์ด๋ค. ๋ํ์ ์ด๊ณ ์ผ๋ฐ์ ์ธ ์ ๋ ฌ ๋ฐฉ์์ด ๋ฒ๋ธ ์ ๋ ฌ, ์ ํ ์ ๋ ฌ, ์ฝ์ ์ ๋ ฌ์ด ์๊ณ ๊ทธ ๋ค๋ก ํจ์จ์ฑ์ ๊ฐ์ ์ํจ ์ ๋ ฌ ๋ฐฉ์๋ค์ด ์๋ค. ๋ฒ๋ธ ์ ๋ ฌ, ์ ํ ์ ๋ ฌ, ์ฝ์ ์ ๋ ฌ์ ํจ์จ์ฑ์ด ๋จ์ด์ ธ ์ ์ฌ์ฉ๋์ง๋ ์์ง๋ง ํน์ ์ํฉ์์๋ ์ ์ฉํ ์ ๋ ฌ๋ฐฉ์์ผ ์ ์๋ค. 7.1 ๋ฒ๋ธ ์ ๋ ฌ : ๊ฐ์ ๋ฒ๋ธ ์ ๋ ฌ์ ํํ ์ฌ์ฉ๋์ง๋ ์๋๋ค. ๋ค๋ฅธ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ๋นํด ๋นํจ์จ์ ์ด๊ธฐ..

6.1 ์ ํ ๊ฒ์(์ ํ ํ์) ์ค๋ ๊ณต๋ถํ ๋ด์ฉ์ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ ๋ํด์ ๊ณต๋ถํ๋ค. ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ ์๋ฅผ ๋ค์ด ํ์๊ฐ์ ์ ์์ด๋๊ฐ ์ค๋ณต๋๋ ๊ฒฝ์ฐ ์ค๋ณต๋ ์์ด๋๊ฐ ์๋์ง ์๋์ง ํ์ธ์ ํด์ผํ๋ ๊ฒฝ์ฐ ๋ฑ ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ์ผ๋ จ์ ๊ณผ์ ์ด ๋ฐ๋ก ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์ฐ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ ๋ค์ํ ๊ฒ์ ๊ด๋ จ ๋ฉ์๋๋ค์ ์ ๊ณตํ๊ณ ์๋ค. 1. indexOf : ๋ฉ์๋๋ฅผ ํตํด ๋ฐฐ์ด๋ด์ ํด๋น ์์๊ฐ ์๋ค๋ฉด ํด๋น ์์์ ์ธ๋ฑ์ค ๋ฒํธ๋ฅผ ๋ฐํํด์ฃผ๊ณ , ์๋ค๋ฉด -1์ ๋ฐํํ๋ค. 2. includes : ๋ฐฐ์ด ๋ด์ ํน์ ์์๊ฐ ํฌํจ๋์ด ์๋์ง ํ์ธํ์ฌ ๋ถ๋ฆฌ์ธ๊ฐ์ ๋ฐํํ๋ค. 3. find : ์์ ์ ํธ์ถํ ๋ฐฐ์ด์ ์์๋ฅผ ์ํํ๋ฉด์ ์ธ์๋ก ์ ๋ฌ๋ ์ฝ๋ฐฑ ํจ์๋ฅผ ํธ์ถํ์ฌ ๋ฐํ๊ฐ์ด true์ธ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๋ฐํํ๋ค. 4. find..