๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ํ† ์ด ํŽธ์ง‘๊ธฐ1

[Queue/Deque] ํ/๋ฑ - ํ† ์ด ํŽธ์ง‘๊ธฐ Undo Redo ํ† ์ด ํŽธ์ง‘๊ธฐ Undo Redo ํ† ์ด ํŽธ์ง‘๊ธฐ์— ๋ฌธ์ž๋ฅผ ์ž…๋ ฅํ•˜๋Š”๋ฐ ์‹คํ–‰์ทจ์†Œ(Undo)๊ธฐ๋Šฅ๊ณผ ๋‹ค์‹œ์‹คํ–‰(Redo)๊ธฐ๋Šฅ์„ ์ง€์›ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์‹คํ–‰์ทจ์†Œ(Undo) ๊ธฐ๋Šฅ์€ ์ œ์ผ ์ตœ๊ทผ์— ์ž‘์—…(Last In)ํ•œ ๊ฒƒ์„ ์ทจ์†Œ์‹œํ‚ค๋Š” ๊ฒƒ(First Out)์ด๋‹ค. ์‹คํ–‰์ทจ์†Œ๋ฅผ ๋ฌด์ž‘์ • ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์–ด์„œ ์ €์žฅ ๊ณต๊ฐ„์„ N๊ฐœ๋กœ ์ œํ•œํ•œ๋‹ค. ์ฆ‰, N+1๋ฒˆ์งธ ์‹คํ–‰์ทจ์†Œ๊ฐ€ ์ผ์–ด๋‚˜๋ฉด ์ œ์ผ ์˜ค๋ž˜๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฌ๋ผ์ง€๋„๋ก ํ•œ๋‹ค. ์ฆ‰, ๊ฐ€์žฅ ์˜ค๋žซ์ „์— ์žˆ๋˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ์—†์• ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ๋ฐ‘ ๋น ์ง„ ์Šคํƒ์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์Šคํƒ์˜ ๋ฐ‘๊ณผ ์œ„๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ํ•œ ์นธ์€ ๋น„์›Œ๋‘”๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ €์žฅ ๊ณต๊ฐ„์ด 11์ธ ๊ฒฝ์šฐ(N=11), ๋ฌธ์ž๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ 10๊ฐœ a b c d e f g h i j ์ž…๋ ฅ๋œ ์ƒํƒœ์—์„œ ๋ฌธ์ž k๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด a๊ฐ€ ์‚ฌ๋ผ์ง€๊ณ  k๊ฐ€ ์ €์žฅ๋œ๋‹ค. ๋˜.. 2023. 7. 9.