LeetCode 386๋ฒ ๋ฌธ์ ๋ 1๋ถํฐ n๊น์ง์ ์ซ์๋ฅผ ์ฌ์ ์(lexicographical) ์์๋ก ์์ฑํ๋ ๋ฌธ์ ์
๋๋ค. ์ฌ์ ์ ์์๋ ์ซ์ ์์์๋ ๋ฌ๋ฆฌ, ์ฌ์ ์์์ ์ ์ฌํฉ๋๋ค. ๋จ์ํ ๋ฌธ์์ด ๊ธฐ๋ฐ ์ ๋ ฌ ๋ฐฉ์์ ๋นํจ์จ์ ์ด๋ฉฐ, O(n log n)์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ต๋๋ค. ๋ชฉํ๋ O(n) ์๊ฐ ๋ณต์ก๋์ O(1) ์ถ๊ฐ ๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ๋ฌ์ฑํ๋ ๊ฒ์
๋๋ค. ํด๊ฒฐ์ฑ
์ ๊น์ด ์ฐ์ ํ์(DFS)์ ์๋ฎฌ๋ ์ด์
ํฉ๋๋ค. ์ด๋ 10์ ๊ณฑํ์ฌ ๋ ๊น์ ๋ ๋ฒจ๋ก ์ด๋ํ๊ณ , 1์ ๋ํ์ฌ ํ์ ๋
ธ๋๋ก ์ด๋ํ๋ ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ฆ
๋๋ค. ์๊ณ ๋ฆฌ์ฆ์ 1์์ ์์ํ์ฌ n์ ์ด๊ณผํ ๋๊น์ง 10์ ๊ณฑํ์ฌ ๋ ๊น์ด ํ์ํ๊ณ , ๊ทธ ํ ๋ค์ ํ์ ๋
ธ๋๋ก ์ด๋ํฉ๋๋ค. ๋ฐฑํธ๋ํน(10์ผ๋ก ๋๋๊ธฐ)์ n์ ์ ์ฝ ๋ด์์ ๋ ์ด์ ํ์ ๋
ธ๋์ ๋๋ฌํ ์ ์์ ๋ ๋ฐ์ํฉ๋๋ค. ์ ๊ณต๋ C++, JavaScript, Python ์ฝ๋๋ ์ด ๋ก์ง์ ํจ์จ์ ์ผ๋ก ๊ตฌํํฉ๋๋ค. ํด๊ฒฐ์ฑ
์ while ๋ฃจํ์ ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํ์ฌ DFS ํ์์ ์๋ฎฌ๋ ์ด์
ํฉ๋๋ค. ๊ณต๊ฐ ๋ณต์ก๋๋ O(1)์ธ๋ฐ, ์ด๋ ์ถ๋ ฅ ๋ฒกํฐ๋ฅผ ์ ์ธํ๊ณ ์์ ์์ ์ถ๊ฐ ๋ฉ๋ชจ๋ฆฌ๋ง ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์
๋๋ค.
dev.to
๐Beginner-Friendly Guide to Solving "Lexicographical Numbers" LeetCode 1061 (C++ | JavaScript | Python)
Create attached notes ...
