์ด๋ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ ํด๋์ ์ผ๋ จ์ ์ ์ฐจํ๋์ ๊ฐ์ ์ ์ฅํ๋ ๋ณ์๊ฐ ์๋๋ผ ๋ฌถ์ ๋จ์๋ก ๊ฐ์ ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ์์๋ฅผ ์์ ํ ์ ์๋(mutable) ๋ฆฌ์คํธํ ๊ฐ์ฒด. ์์์ ์์๋ฅผ ๋งค๊ฒจ ๊ฒฐํฉํ ๊ฒ์ผ๋ก ์์์ ์์๋ฅผ ๋ณ๊ฒฝํ ์ ์๋(immutable) ์๋ฃํMuta
ํ๋ก๊ทธ๋๋จธ๊ฐ ์์ฑํ ์์ค ํ์ผ๋ก ๋ถํฐ ํ๋ก๊ทธ๋จ์ด ์์ํ๋ฉฐ, hello.c๋ผ๋ ํ ์คํธ ํ์ผ๋ก ์ ์ฅ๋๋ค.์์ค ํ๋ก๊ทธ๋จ์ ๋นํธ๋ค์ ์ฐ์์ด๋ฉฐ, 8๋ฐ์ดํธ ๋จ์๋ก ๊ตฌ์ฑ๋๋ค.์ปดํจํฐ ์์คํ ์ ํ ์คํธ ๋ฌธ์๋ฅผ ์์คํค(ASCII) ํ์ค์ ํตํด ํํํ๋ค. ํ๋ก๊ทธ๋จ์ ์ฐ์๋ ๋ฐ์ดํธ๋ค๋ก ํ์ผ
ํ (Queue) ๋จผ์ ๋ฃ์ ๋ฐ์ดํฐ๋ฅผ ๋จผ์ ๊บผ๋ด๋ ์ ์ ์ ์ถ(First-In-First-Out) ๊ตฌ์กฐ enqueue - ๋ฐ์ดํฐ ์ถ๊ฐ dequeue - ๋ฐ์ดํฐ ๊บผ๋ด๊ธฐ front - ๋ฐ์ดํฐ๋ฅผ ๊บผ๋ด๋ ์ชฝ rear - ๋ฐ์ดํฐ๋ฅผ ๋ฃ๋ ์ชฝ ๋ง ๋ฒํผ๋ก ํ ๊ตฌํํ๊ธฐ ๋ฐฐ์ด๋ก ํ๋ฅผ
๋จ์ ์ฝ์ ์ ๋ ฌ์ ๋จ์ ์ ๋ณด์ํ์ฌ ๋ ๋น ๋ฅด๊ฒ ์ ๋ ฌ ๊ฐ๋ฅํ ์ ๋ ฌ ๋ฐฉ์๋จ์ ์ฝ์ ์ ๋ ฌ์ ์ ๋ ฌ์ด ๋์ด์์์๋ก ์ ๋ ฌ ์๋๊ฐ ๋น ๋ฅด์ง๋ง ์ฝ์ ํ ์์น๊ฐ ๋ฉ๋ฉด ์ด๋ํ์๊ฐ ๋ง์์ง๋ค๋ ๋จ์ ์ด ์๋ค.์ ธ ์ ๋ ฌ์ ์ ๋ ฌํ ๋ฐฐ์ด์ ์์๋ฅผ ๊ทธ๋ฃน์ผ๋ก ๋๋์ด ๊ฐ๊ทธ๋ฃน๋ณ ์ ๋ ฌ์ ์ํํ๋ค. ์ดํ ๊ทธ๋ฃน์ ํฉ
์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ์ค ์ถ๋ ฅ๊ฐ์ด ๋๋ฌด ํฌ๊ธฐ ๋๋ฌธ์ ํน์ ์๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ๊ฐ ๋์จ๋ค.๊ฒฐ๊ณผ ๊ฐ์ ๋จ์ํ mod ์ฐ์ฐ์ ์ ์ฉํ๋ฉด ์ด๋ฏธ ๊ฒฐ๊ณผ๊ฐ์ด ๋๋ฌด ์ปค์ง ์ํ์์ ์ฐ์ฐ์ ์ํํ๊ธฐ ๋๋ฌธ์ ์ฐ์ฐ ์๊ฐ์ด ๋ง์ด ์์๋๋ค. ์๋์ ๋ชจ๋๋ฌ ๋ถ๋ฐฐ๋ฒ์น์ ๋ฐ๋ผ์ ์ฐ์ฐ ๋ง๋ค ๋ชจ๋๋ฌ
์์ง๋ก ์ฐ๊ฒฐํ ์ถ์์ ์ด๊ณ ์ผ๋ฐ์ ์ธ ์๋ฃ๊ตฌ์กฐ.ํธ๋ฆฌ์ ๊ฒฝ์ฐ ์ฌ์ดํด์ด ์๋ ๊ทธ๋ํ์ด๊ณ , ๋งํฌ๋ ๋ฆฌ์คํธ์ ๊ฒฝ์ฐ ํ๋์ ๊ฒฝ๋ก๋ก๋ง ์ด๋ฃจ์ด์ง ๊ทธ๋ํ์ด๋ค.์ ์ (vertext), ๋ ธ๋(node) โ ์ด๋ค ๋์์ ๊ฐ์ฒด์์ง(Edge), ๋งํฌ(Link) โ Vertex ๊ฐ์ ๊ด๊ณ๋ฐฉํฅ์ฑ๋ฌด๋ฐฉํฅ
์ธ์ ๋ฆฌ์คํธ๋ ํน์ ๋ ธ๋์์ ๋ค๋ฅธ ๋ ธ๋๋ก ์ด๋ํ๋ ๊ฐ์ ์ ๊ฒ์ํจ์ ์์ด ์ธ์ ํ๋ ฌ์ ๋นํด ๋๋ฆฌ๋ค๋ ๋จ์ ์ด ์๋ค. ๋ฐ๋ฉด์ ์ธ์ ํ๋ ฌ์ ์ฌ์ฉํ๋ฉด ๊ฒ์์์ ์ด์ ์ ๊ฐ์ง ์ ์์ง๋ง ๋ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํด์ผํ๋ค๋ ์ ์ ๊ณ ๋ คํด์ผํ๋ค. ํ์ง๋ง ๋ฌด๋ฐฉํฅ ๊ทธ๋ํ์ ๊ฒฝ์ฐ ์๋ก ์ฐ๊ฒฐ๋ ๋ ธ๋
ํธ๋ผ์ด๋ ๋ฌธ์์ด์ ์ ์ฅํ๊ต ํจ์จ์ ์ผ๋ก ํ์ํ๊ธฐ ์ํ ํธ๋ฆฌํํ์ ์๋ฃ๊ตฌ์กฐ๋ฅผ ๋งํ๋ค.์ค์ํ์์ โ์๋์์ฑ ๊ธฐ๋ฅโ, โ์ฌ์ ๊ฒ์โ ๋ฑ์์ ํ ์คํธ๋ฅผ ๋น ๋ฅด๊ฒ ๊ฒ์ํ ๋ ์ฃผ๋ก ์ฌ์ฉ๋๊ณ ์๋ค.๋๋์ค ํธ๋ฆฌ(Redix Tree), ์ ๋์ฌ ํธ๋ฆฌ(Prefix Tree), ํ์ ํธ๋ฆฌ(Ret
๊ทธ๋ํ๋ด ๋ชจ๋ ์ ์ ์ ํฌํจํ๋ ํธ๋ฆฌ๊ทธ๋ํ์ ์ต์ ์ฐ๊ฒฐ ๋ถ๋ถ ๊ทธ๋ํ์ต์ ์ฐ๊ฒฐ = ๊ฐ์ ์ ์๊ฐ ์ ๋ค.n๊ฐ์ ๋ ธ๋์ ์ต์ ๊ฐ์ ๊ฐ์๋ N - 1๊ฐ์ด๊ณ , N - 1๊ฐ์ ๊ฐ์ ์ผ๋ก ์ฐ๊ฒฐ๋์ด ์์ผ๋ฉด ํ์ฐ์ ์ผ๋ก ํธ๋ฆฌ ํํ๊ฐ ๋๊ณ , ์ด๋ฅผ Spannig Tree๋ผ๊ณ ํ๋ค.DFS, BFS
์์คํ ์ด ํ๋ก๊ทธ๋จ์ ์คํ์ํค๋ ๊ณผ์ ์ ์์ด์ ์ ๋ณด๋ฅผ ํ ๊ณณ์์ ๋ค๋ฅธ ๊ณณ์ผ๋ก ์ด๋ํ๋ ๊ณผ์ ์ด ๋น๋ฒํ๊ฒ ๋ฐ์ํ๋ค๋ ๊ฒ์ ํ์ธํ๋ค.์ด๋ ์ค์ ์ฐ๋ฆฌ๊ฐ ํ๋ก๊ทธ๋จ์ ํตํด ์คํํ๋ ค๊ณ ํ๋ ๋์๊ณผ๋ ๋ฌด๊ดํ, ์ค์ ์์ ์ ์คํ์ ๋ฐฉํด(?)ํ๋ ์ค๋ฒํค๋ ์ฒ๋ผ ๋๊ปด์ง๋ค.๋ฉ๋ชจ๋ฆฌ๊ฐ ํด ์๋ก
์ปดํจํฐ ์์คํ ์์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๊ฐ์ ์ค๋ฆฌ์ฝ ๋ฉ๋ชจ๋ฆฌ ์นฉ์ ๋น ๋ฅธ ์์ธ์ค ์๋๋ฅผ ๊ฐ์ง๊ณ ์์ง๋ง ์ ์ฅ ๋นํธ ๋๋น ๋น์ผ ๋น์ฉ์ผ๋ก ์ธํด์ ์๊ธฐ ๋์คํฌ ๊ธฐ๋ฐ์ ๋ณด์กฐ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํจ๊ป ์ฌ์ฉํ๊ณ ์๋ค. ์๊ธฐ ๋์คํฌ์ ๊ฒฝ์ฐ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์์ง๋ง ๋ฌผ๋ฆฌ์ ์ธ ํ๊ณ๋ก ์ธํด ๋ฐ์ดํฐ์ ์
๋์ ๊ณํ๋ฒ์ ๋ฐ๋ณต๋๋ ์์ ๋ฌธ์ ์ ๊ฒฐ๊ณผ ๊ฐ์ ํตํด์ ํฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ์์ ๋งํ๋ค.์ด๋ค ๋ฌธ์ ๋ฅผ ๋์ ๊ณํ๋ฒ์ผ๋ก ํ๊ธฐ ์ํด์ ํด๋น ๋ฌธ์ ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ธ์ง ํ์ธํด๋ด์ผํ๋ค.๋ฌธ์ ๋ฅผ ๋ ์์ ๊ฐ๋จํ ๋ฌธ์ ๋ก ๋๋ ์ ์๋ ๊ฒฝ์ฐ์์ ๋ฌธ์ ๊ฐ ๋ฐ๋ณต๋๋ ๊ฒฝ์ฐ์ต์ ์ ํ์ ๊ตฌ์กฐ
FE ์ํฐํด ์ฝ๊ธฐ [๋ฒ์ญ] ๋ฆฌ์กํธ ์ปดํ์ผ๋ฌ์ ๋ฆฌ์กํธ 19 - ์ด์ ๋ฉ๋ชจ์ด์ ์ด์ ์ ์ ๊ฒฝ์ฐ์ง ์์๋ ๋๋์? ๋ด์ฉ React 19์ ๋ฑ์ฅ ์ด์์ ํจ๊ป ๊ฑฐ๋ก ๋๊ณ ์๋ ์ด์ ์ค ํ๋๊ฐ React Compiler์ ๋ฑ์ฅ์ด๋ค. React Compiler์ ๋ฑ์ฅ์ด ์ด์
์ด๋ ํ ๋ฌธ์์ด X๋ฅผ ACDAB๋ผ๊ณ ํ๋ค๋ฉด, ๋ถ๋ถ ์์ด์ {A}, {C}, {D}, {A}, {B}, {A, C}, {A, C, D} โฆ {A, C, D, A, B}๊ฐ ๋๋ค.LCS๋ ๋ ๋ฌธ์์ด์ ๋น๊ตํ ๋, ๊ณตํต ์์ด ์ค ๊ธธ์ด๊ฐ ๊ฐ์ฅ ๊ธด ๋ถ๋ถ ์์ด์ ์๋ฏธํ๋ค.๊ธฐ๋ณธ์
FE Article Link: https://yozm.wishket.com/magazine/detail/2483/ ์ ๋ชฉ : ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๊ฐ ์์์ผํ โ์ ๋ ํ ์คํธโ ์์ฑ๋ฒ ๋ด์ฉ ํ ์คํธ์ ๋ณธ์ง์ โ๊ฒ์ฆํ๊ณ ์ถ์ ๋ฌด์ธ๊ฐ๋ฅผ ๊ฒ์ฆํ๋ ๊ฒโ์ด๋ค. ๊ฒ์ฆํ๋ ๊ฒ์ด
ํ๋ก์ธ์ค ๋ ์ง์คํฐ(processor register) ๋๋ ๋ ์ง์คํฐ๋ ์ปดํจํฐ์ ํ๋ก์ธ์ ๋ด์์ ์๋ฃ๋ฅผ ๋ณด๊ดํ๋ ์์ฃผ ๋น ๋ฅธ ๊ธฐ์ต ์ ์ฅ์์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ํ์ฌ ์ฐ์ฐ์ ์ฌ์ฉ๋๋ ๊ฐ์ ์ ์ฅํ๋๋ฐ ์ฌ์ฉ๋๋ค.๋ ์ง์คํฐ์ ์ข ๋ฅ๋ฐ์ดํฐ ๋ ์ง์คํฐ : ์ ์ ๊ฐ์ ์ ์ฅํ ์ ์๋ ๋ ์ง์คํฐ์ฃผ์
์ ์ธ์ ์ด๋ค ๋ณ์๋ ํจ์์ ํ์์ ์ ์ํ๋ ๋จ๊ณ.์ ์๋ ์ด๋ค ๋ณ์๋ ํจ์๋ฅผ ์ ์ธํจ๊ณผ ๋์์ ๊ฐ๊น์ง ๋ถ์ฌํ๋ ๊ฒ.์ ์ธ๋งํ๋ ๊ฒฝ์ฐ, ํด๋น ๊ฐ์ด๋ ํจ์์ ๋ํด์ ์ ์ ์๋ค.๋ณ์์ ๊ฒฝ์ฐ ์ ์ธ๋ง ํ ๊ฒฝ์ฐ C ์ธ์ด ์ปดํ์ผ๋ฌ๊ฐ ์๋์ผ๋ก ๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ 0์ผ๋ก ์ด๊ธฐํ ํ๊ธฐ ๋๋ฌธ์
์์ ๋ ธ๋๋ฅผ 2๊ฐ ์ดํ๋ก ๊ฐ์ง๋ ํธ๋ฆฌ.๋ง์ง๋ง ๋ ๋ฒจ์ ๋ ธ๋, ์ฆ leaf ๋ ธ๋๋ฅผ ์ ์ธํ๊ณ ๋ชจ๋ ๋ ๋ฒจ์ด ์์ ํ ์ฑ์์ ธ ์์ด์ผํ๋ฉฐ, ๋ง์ง๋ง ๋ ๋ฒจ์ ๋ชจ๋ ๋ ธ๋๋ ์ผ์ชฝ๋ถํฐ ์ฑ์์ ธ์์ด์ผ ํ๋ค. ๋ง์ง๋ง ๋ ๋ฒจ h์์ ๋ฃจํธ ๋ ธ๋๊น์ง ์ด 2^h - 1๊ฐ์ ๋ ธ๋๋ฅผ ๊ฐ์ง ์ ์๋ค.ํจ์จ์ ์ธ
ํ๋ก๊ทธ๋๋ฐ์์ ์ ํ์ ์ธ ๋ฐ๋ณต์ด๋ ์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ์์ ์ ํ์ ์ธ ๋ฐ๋ณต์ด๋ ์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ์์ ์ข ๋ฃ ์กฐ๊ฑด์ผ๋ก ์ฌ์ฉํ๊ธฐ์ํ ํน๋ณํ ๊ฐ์ ๋งํ๋ค. (flag value, trip value, rogue value, signal value, dummy data)๋ผ๊ณ ํ๋ค.Sentin
DMA (์ง์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ, Direct Memory Access) ์ง์ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ ํน์ ํ๋์จ์ด ํ์ ์์คํ ์ด CPU์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ ์ ์๊ฒ ํด์ฃผ๋ ์ปดํจํฐ ์์คํ ๊ธฐ๋ฅ. DMA๋ฅผ ์ฌ์ฉํจ์ผ๋ก์ CPU์ DMA๋ ์ํ, ์ ์ด ์ ๋ถ๋ง ๊ตํํ๊ณ ,
ํ ๊ฐ์ ์๋ฒ ํ๋ก์ธ์ค์ ํ ๊ฐ์ ํด๋ผ์ด์ธํธ ํ๋ก์ธ์ค๋ก ๊ตฌ์ฑ๋ ๋ชจ๋ธ.์๋ฒ - ์ผ๋ถ ๋ฆฌ์์ค๋ฅผ ๊ด๋ฆฌ, ์ด ๋ฆฌ์์ค๋ฅผ ์กฐ์ ํด์ ํด๋ผ์ด์ธํธ์๊ฒ ์๋น์ค๋ฅผ ์ ๊ณตํ๋ ๋จ๋ง๊ธฐํด๋ผ์ด์ธํธ - ์๋น์ค๋ฅผ ์ฌ์ฉํ๋ ์ฌ์ฉ์ ํน์ ์ฌ์ฉ์์ ๋จ๋ง๊ธฐFTP ์๋ฒํด๋ผ์ด์ธํธ๋ฅผ ์ํด ์ ์ฅํ๊ณ ์ฝ์ด์ค๋ ๋์คํฌ