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

๐Ÿบ ๋งค์ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋’ค์—์„œ n๋ฒˆ์งธ ๋…ธ๋“œ ์‚ญ์ œํ•˜๊ธฐ

 

์•Œ๊ณ ๋ฆฌ์ฆ˜

1. ํฌ์ธํ„ฐ hare๋ฅผ n๋งŒํผ ๋จผ์ € ์ด๋™์‹œํ‚จ๋‹ค.

2. curr์™€ hare๋ฅผ ๊ฐ™์€ ์†๋„๋กœ ์ด๋™์‹œํ‚จ๋‹ค. ์ด๋•Œ curr๋Š” ํ—ค๋“œ์—์„œ hare๋Š” n๋ฒˆ์งธ ๋…ธ๋“œ์—์„œ ์ถœ๋ฐœํ•œ๋‹ค.

3. curr๊ณผ hare์‚ฌ์ด์—๋Š” n๊ฐœ์˜ ๋…ธ๋“œ๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ,
   hare๊ฐ€ ๋’ค์—์„œ๋ถ€ํ„ฐ 1๋ฒˆ์งธ์— ์žˆ์„ ๋•Œ curr๋Š” ๋’ค์—์„œ๋ถ€ํ„ฐ n+1๋ฒˆ์งธ ๋…ธ๋“œ์— ์žˆ๋‹ค.
   ๊ทธ๋Ÿฌ๋ฏ€๋กœ curr.next๊ฐ€ ๋‹ค์Œ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ๊ฐ€๋ฅดํ‚ค๋„๋ก ์ˆ˜์ •ํ•˜์—ฌ n๋ฒˆ์งธ ๋…ธ๋“œ๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.



์—ฃ์ง€ ์ผ€์ด์Šค

  • n์ด ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ์˜ ๊ธธ์ด์™€ ๊ฐ™์„๋•Œ๊ฐ€ ์—ฃ์ง€์ผ€์ด์Šค์ด๋‹ค.
  • curr์˜ ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋ฆฌ์ŠคํŠธ์˜ ์ฒซ๋ฒˆ์งธ ๋…ธ๋“œ๋ฅผ ์‚ญ์ œํ•ด์•ผํ•ด์•ผํ•œ๋‹ค.
  • ๊ธธ์ด๊ฐ€ n์ธ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ์˜ ํ—ค๋“œ์—์„œ n๋ฒˆ ๋–จ์–ด์ง„ ๊ณณ์€ null์ด๋‹ค.
  • ๊ทธ๋Ÿฌ๋ฏ€๋กœ hare๊ฐ€ null๊ฐ’์ธ์ง€์— ๋”ฐ๋ผ ์ด๋ฅผ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค.


๋ณต์žก๋„ ๋ถ„์„

  • ์‹œ๊ฐ„๋ณต์žก๋„: O(N)
  • ๊ณต๊ฐ„๋ณต์žก๋„: O(1)