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

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) ์์์ N๊ฐ์ ์ซ์๊ฐ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋๋ค. N๊ฐ์ ์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ๋ค์ N๊ฐ์ ์ ์ค ํ ๊ฐ์ ์์ธ M์ด ์ฃผ์ด์ง๋ฉด ์ด๋ถ๊ฒ์์ผ๋ก M์ด ์ ๋ ฌ๋ ์ํ์์ ๋ช ๋ฒ์งธ์ ์๋์ง ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์. ๋จ ์ค๋ณต๊ฐ์ ์กด์ฌํ์ง ์์ต๋๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ ์ค์ ํ ์ค์ ์์ฐ์ N(3

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) ํ์๋ ๋ค์ ๋ฌ์ ๊ฒฐํผ์ ํฉ๋๋ค. ํ์๋ ๊ฒฐํผ์ ํผ๋ก์ฐ์ ์ฅ์๋ฅผ ๋น๋ ค 3์ผ๊ฐ ์ฌ์ง ์๊ณ ํ๋ ค๊ณ ํฉ๋๋ค. ํผ๋ก์ฐ์ ์ฐธ์ํ๋ ์น๊ตฌ๋ค N๋ช ์ ์ฐธ์ํ๋ ์๊ฐ์ ๋ณด๋ฅผ ํ์๋ ์น๊ตฌ๋ค์๊ฒ ๋ฏธ๋ฆฌ ์๊ตฌํ์ต๋๋ค. ๊ฐ ์น๊ตฌ๋ค์ ์์ ์ด ๋ช ์์ ๋์ฐฉํด์ ๋ช ์์ ๋ ๋ ๊ฒ์ธ์ง ํ์์๊ฒ ์๋ ค์ฃผ์์ต๋๋ค. ํ์๋ ์ด ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ํผ๋ก์ฐ ์ฅ์์ ๋์์ ์กด์ฌํ๋ ์ต๋ ์ธ์์๋ฅผ ๊ตฌํ์ฌ ๊ทธ ์ธ์์ ์์ฉํ ์ ์๋ ์ฅ์๋ฅผ ๋น๋ฆฌ๋ ค๊ณ ํฉ๋๋ค. ์ฌ๋ฌ๋ถ์ด ํ์๋ฅผ ๋์์ฃผ์ธ์. ๋ง์ฝ ํ ์น๊ตฌ๊ฐ ์ค๋ ์๊ฐ 13, ๊ฐ๋์๊ฐ 15๋ผ๋ฉด ์ด ์น๊ตฌ๋ 13์ ์ ๊ฐ์ ํผ๋ก์ฐ ์ฅ์ ์กด์ฌํ๋ ๊ฒ์ด๊ณ 15์ ์ ๊ฐ์๋ ์กด์ฌํ์ง ์๋๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ์งธ ์ค์ ํผ๋ก์ฐ์ ์ฐธ์ํ ์ธ์์ N..

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) ํ ๊ฐ์ ํ์์ค์ด ์๋๋ฐ ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์ ํ๋ n๊ฐ์ ํ์๋ค์ ๋ํ์ฌ ํ์์ค ์ฌ์ฉํ๋ฅผ ๋ง๋ค ๋ ค๊ณ ํ๋ค. ๊ฐ ํ์์ ๋ํด ์์์๊ฐ๊ณผ ๋๋๋ ์๊ฐ์ด ์ฃผ์ด์ ธ ์๊ณ , ๊ฐ ํ์๊ฐ ๊ฒน์น์ง ์๊ฒ ํ ๋ฉด์ ํ์์ค์ ์ฌ์ฉํ ์ ์๋ ์ต๋์์ ํ์๋ฅผ ์ฐพ์๋ผ. ๋จ, ํ์๋ ํ๋ฒ ์์ํ๋ฉด ์ค๊ฐ์ ์ค ๋จ๋ ์ ์์ผ๋ฉฐ ํ ํ์๊ฐ ๋๋๋ ๊ฒ๊ณผ ๋์์ ๋ค์ ํ์๊ฐ ์์๋ ์ ์๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ์งธ ์ค์ ํ์์ ์ n(1

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) N๊ฐ์ ํ๋ฉด์์ ์ขํ(x, y)๊ฐ ์ฃผ์ด์ง๋ฉด ๋ชจ๋ ์ขํ๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ ์ธ์. ์ ๋ ฌ๊ธฐ์ค์ ๋จผ์ x๊ฐ์ ์ํด์ ์ ๋ ฌํ๊ณ , x๊ฐ์ด ๊ฐ์ ๊ฒฝ์ฐ y๊ฐ์ ์ํด ์ ๋ ฌํฉ๋๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ์งธ ์ค์ ์ขํ์ ๊ฐ์์ธ N(3

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) ์ ํ๊ธฐ๊ฐ ์์๋์์ต๋๋ค. ํ์๋ ์ ์ง๊ฟ์ ๋ง๋ ๋๋ฌด ์ ์ด ๋ฌ์ต๋๋ค. ํ์๋ค ๋ฐ์๋ N๋ช ์ ํ์๋ค์ด ์์ต๋๋ค. ์ ์๋์ ๋ฐ ํ์๋ค์๊ฒ ๋ฐ ๋ฒํธ๋ฅผ ์ ํด ์ฃผ๊ธฐ ์ํด ์ด๋์ฅ์ ๋ฐ ํ์๋ค์ ํค๊ฐ ๊ฐ์ฅ ์์ ํ ์๋ถํฐ ์ผ๋ ฌ๋ก ํค์์ผ๋ก ์ธ์ ์ต๋๋ค. ์ ์ผ ์์ ๊ฐ์ฅ ์์ ํ์๋ถํฐ ๋ฐ ๋ฒํธ๋ฅผ 1๋ฒ๋ถํฐ N๋ฒ๊น ์ง ๋ถ์ฌํฉ๋๋ค. ํ์๋ ์ง๊ฟ๋ณด๋ค ํค๊ฐ ํฝ๋๋ค. ๊ทธ๋ฐ๋ฐ ํ์๊ฐ ์ ๋ฒํธ๋ฅผ ๋ฐ๊ณ ์ถ์ด ์ง๊ฟ๊ณผ ์ ๋ฆฌ๋ฅผ ๋ฐ๊ฟจ์ต๋๋ค. ์ ์๋์ ์ด ์ฌ์ค์ ๋ชจ๋ฅด๊ณ ํ์๋ค์๊ฒ ์์๋ ์์๋๋ก ๋ฒํธ๋ฅผ ๋ถ์ฌํ์ต๋ ๋ค. ํ์์ ์ง๊ฟ์ด ์๋ฆฌ๋ฅผ ๋ฐ๊พผ ๋ฐ ํ์๋ค์ ์ผ๋ ฌ๋ก ์์๋ ํค ์ ๋ณด๊ฐ ์ฃผ์ด์ง ๋ ํ์๊ฐ ๋ฐ์ ๋ฒ ํธ์ ํ์ ์ง๊ฟ์ด ๋ฐ์ ๋ฒํธ๋ฅผ ์ฐจ๋ก๋ก ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑ..

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) ์บ์๋ฉ๋ชจ๋ฆฌ๋ CPU์ ์ฃผ๊ธฐ์ต์ฅ์น(DRAM) ์ฌ์ด์ ๊ณ ์์ ์์ ๋ฉ๋ชจ๋ฆฌ๋ก์ CPU๊ฐ ์ฒ๋ฆฌํ ์์ ์ ์ ์ฅํด ๋์๋ค๊ฐ ํ์ํ ๋ฐ๋ก ์ฌ์ฉํด์ ์ฒ๋ฆฌ์๋๋ฅผ ๋์ด๋ ์ฅ์น์ด๋ค. ์๋ ๋น์ธ๊ณ ์ฉ๋์ด ์์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํด์ผ ํ๋ค. ์ฒ ์์ ์ปดํจํฐ๋ ์บ์๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ ๊ท์น์ด LRU ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ ๋ฅธ๋ค. LRU ์๊ณ ๋ฆฌ์ฆ์ Least Recently Used ์ ์ฝ์๋ก ์ง์ญํ์๋ฉด ๊ฐ์ฅ ์ต๊ทผ์ ์ฌ์ฉ๋์ง ์ ์ ๊ฒ ์ ๋์ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์บ์์์ ์์ ์ ์ ๊ฑฐํ ๋ ๊ฐ์ฅ ์ค๋ซ๋์ ์ฌ์ฉํ์ง ์์ ๊ฒ์ ์ ๊ฑฐํ๊ฒ ๋ค๋ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ๋ง์ฝ์บ์์์ฌ์ด์ฆ๊ฐ5์ด๊ณ ์์ ์ด 2 3 1 6 7 ์์ผ๋ก์ ์ฅ๋์ด์๋ค๋ฉด, (๋งจ ์์ด ๊ฐ์ฅ ์ต๊ทผ์ ์ฐ์ธ ์์ ์ด๊ณ , ๋งจ ๋ค๋ ๊ฐ์ฅ ์ค..

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) N๊ฐ์ด ์ซ์๊ฐ ์ ๋ ฅ๋๋ฉด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ์ฌ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์. ์ ๋ ฌํ๋ ๋ฐฉ๋ฒ์ ์ฝ์ ์ ๋ ฌ์ ๋๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ ๋ฒ์งธ ์ค์ ์์ฐ์ N(1 temp){ arr[j+1] = arr[j]; }else break; } arr[j+1] = temp; } return answer; } let arr = [11,7,5,6,10,9]; console.log(solution(arr));

๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋) N๊ฐ์ ์ ์๊ฐ ์ ๋ ฅ๋๋ฉด ๋น์ ์ ์ ๋ ฅ๋ ๊ฐ์ ์ ๋ ฌํด์ผ ํ๋ค. ์์ ์ ์๋ ์์ชฝ์ ์์์ ์๋ ๋ท์ชฝ์ ์์ด์ผ ํ๋ค. ๋ํ ์์์ ์์ ์์์ ์์ ์์์๋ ๋ณํจ์ด ์์ด์ผ ํ๋ค. โฃ ์ ๋ ฅ์ค๋ช ์ฒซ ๋ฒ์งธ ์ค์ ์ ์ N(5