[JavaScript/section 5] 06 - ํ๊ธ ํ์ฅ
ยท
Algorithm/์ธํ๋ฐ(inflearn)
๐ 06 - ํ๊ธ ํ์ฅ(ํด์ฌ) ํฌํ์ฉ์ง์๋ ๋ฐ ํ์๋ค์ด ์๊ธฐ๊ฐ ์ ํํ ํ๋ณด์ ๊ธฐํธ(์ํ๋ฒณ)๊ฐ ์ฐ์ฌ์ ธ ์์ผ๋ฉฐ ์ ์๋์ ๊ทธ ๊ธฐํธ๋ฅผ ๋ฐํํ๊ณ ์๋ค. ์ ์๋์ ๋ฐํ๊ฐ ๋๋ ํ ์ด๋ค ๊ธฐํธ์ ํ๋ณด๊ฐ ํ๊ธ ํ์ฅ์ด ๋์๋์ง ์ถ๋ ฅํ๋ ๋ฌธ์ ์ด๋ค. ๋์ ํ์ด ๋ฐฉ๋ฒ Map ๊ฐ์ฒด๋ [ํค, ๊ฐ] ํํ์ ๊ฐ์ ๊ฐ์ง๋ ๊ฐ์ฒด๋ก ํค ๊ฐ์ ์ ์ผํด์ผ ํ์ง๋ง ๊ฐ์ ์ค๋ณต, ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๋ฉฐ ์์๊ฐ ์๊ด์ด ์๋ค. ๊ฐ์ฒด์ ๋น์ทํด๋ณด์ด์ง๋ง Map ๊ฐ์ฒด๋ ํค์ ๋ค์ํ ์๋ฃํ์ ํ์ฉํ๋ค๋ ์ ์์ ์ฐจ์ด๊ฐ ์๋ค. Map ๊ฐ์ฒด๋ฅผ ์์ฑํด์ค๋ค. (new Map()) ๋ฌธ์์ด์ ์ฐจ๋ก๋๋ก ๋๋ฉฐ has() ํจ์๋ฅผ ์ด์ฉํ์ฌ key๊ฐ ์กด์ฌํ๋์ง ํ์ธ์ ํ๋ค. key๊ฐ ์ด๋ฏธ ์กด์ฌํ๋ ๊ฒฝ์ฐ ๋จผ์ get() ํจ์๋ฅผ ์ด์ฉํ์ฌ key์ ํด๋นํ๋ ๊ฐ์ ๋ฐํ๋ฐ์ + 1์ ํด์ค๋ค. set..