Computer Science
๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ
8/15/2024

goto ๋ฌธ์ ํด๋ก์
๋ค๋๋๋์ ์ปดํจํฐ ๊ณตํ์ Dijkstra๋ ํ๋ก๊ทธ๋๋ฐ์ด ๋ณธ์ง์ ์ผ๋ก ์ด๋ ต๋ค๋ ๊ฒ์ ์ธ์ํ๊ณ , ํ๋ก๊ทธ๋๋ฐ์์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ์ฆ๋ช ์ด๋ผ๋ ์ํ์ ์ธ ์๋ฆฌ๋ฅผ ์ ์ฉํ์ฌ ํด๊ฒฐํ๊ธฐ๋ก ํ๋ค. ํ๋ก๊ทธ๋๋จธ๋ ์ด๋ฏธ ์ฆ๋ช ๋ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ ธ์ ์ด์ฉํ๋ฉฐ, ์ด ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง ์ฝ๋๋ค์ ๊ฒฐํฉ์์ผ์ ์ฝ๋๊ฐ ์ฌ๋ฐ๋ฅด๋ค๋ ์ฌ์ค์ ์ฆ๋ช ํ๋ ๋ฐฉ์์ผ๋ก ๊ฐ๋ฐํด์ผํ๋ค๊ณ ๋ฏฟ์๋ค.
Dijkstra๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฆ๋ช ํ๋ ๊ณผ์ ์์ goto๋ฌธ์ด ๋ชจ๋์ ์ฌ๊ท์ ์ผ๋ก ๋ถํดํ๋ ๊ณผ์ ์ ๋ฐฉํด๊ฐ ๋๋ ๊ฒฝ์ฐ๊ฐ ์์์ ํ์ธํ๋ค. ๋ชจ๋์ ๋ถํดํ ์ ์๋ค๋ฉด, ํฉ๋ฆฌ์ ์ผ๋ก ์ฆ๋ช ํ ๋ ํ์์ ์ธ ๊ธฐ๋ฒ์ธ ๋ถํ ์ ๋ณต ์ ๊ทผ๋ฒ์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค.
๋ฐ๋ฉด goto ๋ฌธ์ฅ์ ์ฌ์ฉํ๋๋ผ๋ ๋ชจ๋์ ๋ถํดํ๋๋ฐ์ ๋ฌธ์ ๊ฐ ๋์ง ์์ ๊ฒฝ์ฐ๋ ์์๋ค. Dijkstra๋ ์ด๋ฐ goto๋ฌธ์ ์ข์ ์ฌ์ฉ ๋ฐฉ์์ if/then/else์ do/while๊ณผ ๊ฐ์ ๋ถ๊ธฐ์ ๋ฐ๋ณต์ด๋ผ๋ ๋จ์ํ ์ ์ด ๊ตฌ์กฐ์ ํด๋นํ๋ค๋ ์ฌ์ค์ ๋ฐ๊ฒฌํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ์ ์ด ๊ตฌ์กฐ๋ ์์ฐจ ์คํsequential execution๊ณผ ๊ฒฐํฉํ์ ๋ ํน๋ณํ๋ค๋ ์ฌ์ค์ ๊นจ๋ฌ์๋ค. ๋ชจ๋ ํ๋ก๊ทธ๋จ์ ์์ฐจsequence, ๋ถ๊ธฐselection, ๋ฐ๋ณตiteration์ด๋ผ๋ ์ธ๊ฐ์ง ๊ตฌ์กฐ๋ง์ผ๋ก ํํํ ์ ์๋ค๋ ์ฌ์ค์ ์ฆ๋ช ํ๋ค.
๊ธฐ๋ฅ์ ๋ถํด
๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ์ ํตํด ๋ชจ๋์ ์ฆ๋ช ๊ฐ๋ฅํ ์์ ๋จ์๋ก ๋ถํดํ ์ ์๊ฒ ๋์๋ค. ๋ชจ๋ ๊ณ ์์ค์ ๊ธฐ๋ฅ๋ค์ ์ ์์ค์ ๊ธฐ๋ฅ๋ค๋ก ๋๋์ด์ง๊ณ , ์ด๋ค์ ๋ชจ๋ ํ๋ก๊ทธ๋๋ฐ์ ์ ํ๋ ์ ์ด ๊ตฌ์กฐ๋ฅผ ์ด์ฉํ์ฌ ํํํ ์ ์๊ฒ ๋์๋ค. ์ด๋ค์ ๋ชจ๋ ์ ์ฆํ ์ ์๋ ์์ ๋จ์๊ฐ ๋์ด ์ ์ฒด ์์คํ ์ ๊ตฌ์กฐ์ ์ผ๋ก ์ค๊ณํ ์ ์๋ ์ด๋ก ์ ๊ทผ๊ฐ์ด ๋์๋ค.
๊ณผํ์ ๋ฐฉ๋ฒ๋ก ๊ณผ ์ํํธ์จ์ด ํ ์คํธ
Dijkstra๊ฐ ์ํ๋ ๊ณ ํ์ง์ ์ํํธ์จ์ด๋ฅผ ์ํ ๊ธฐ๋ฅ ๋จ์ ๋ถํด์ ์ด๋ฅผ ์ ์ฆํ๋ ๋ฐฉ๋ฒ์ ๋๋ด ์์ฑ๋์ง ๋ชปํ๋๋ฐ, ์ด๋ ์ธ์ธํ ๊ธฐ๋ฅ ํ๋ํ๋๋ฅผ ์๋ฐํ ์ฆ๋ช ํ๋ ์์ ์์ ๋ฐ์ํ๋ ๋น์ฉ ๋๋ฌธ์ด์๋ค.
๋คํํ๋ ๋ฌด์ธ๊ฐ๊ฐ ์ฌ๋ฐ๋ฅธ์ง ์ ์ฆํ ๋ ์ฌ์ฉํ๋ ์ ๋ต์๋ ์ํ์ ์ธ ์ฆ๋ช ๋ฟ๋ง ์๋๋ผ ๊ณผํ์ ๋ฐฉ๋ฒ๋ ์กด์ฌํ๋ค. ๊ณผํ์ ๊ทผ๋ณธ์ ์ผ๋ก ์ํ๊ณผ๋ ๋ค๋ฅธ๋ฐ, ๊ณผํ ์ด๋ก ๊ณผ ๋ฒ์น์ ๊ทธ ์ฌ๋ฐ๋ฆ์ ์ ๋ ์ฆ๋ช ํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๋ดํด์ ์ด๋ ์ 2 ๋ฒ์น์ธ F = ma์ ๊ดํ์ฌ ๋ฒ์น๊ณผ ๊ด๋ จ๋ ์คํ์ ์์ฐํด๋ณผ ์๋ ์๊ณ , ์์์ ์ดํ์ ์ ํ๋๋ก ์ธก์ ํ ์๋ ์์ง๋ง ์ํ์ ์ผ๋ก ์ฆ๋ช ํ ์๋ ์๋ค. ๊ณผํ์ ๋ฐฉ๋ฒ์ ๋ฐ์ฆ์ ๊ฐ๋ฅํ์ง๋ง ์ฆ๋ช ์ ๋ถ๊ฐ๋ฅํ๋ค.
๋ฐ๋ผ์ ๊ณผํ์ ์์ ๋ ๋ด์ฉ์ด ์ฌ์ค์์ ์ฆ๋ช ํ๋ ๋ฐฉ์์ด ์๋๋ผ ์์ ์ด ํ๋ ธ์์ ์ฆ๋ช ํ๋ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค. ์ด๋ฌํ ๋ ธ๋ ฅ์ ํฌ์ ์ผ๋ก๋ ๋ฐ๋ก๋ฅผ ๋ค ์ ์๋ ์์ ์ด ์๋ค๋ฉด ๋ชฉํ์ ๋ถํฉํ ๋งํผ์ ์ฐธ์ด๋ผ๊ณ ๋ณธ๋ค.
์ด๋ฌํ ๊ณผํ์ ์ ๊ทผ์ ์ํํธ์จ์ด ๊ฐ๋ฐ์์๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์ฉ๋์๋ค. ์ํํธ์จ์ด ๊ฐ๋ฐ์๋ ์ํ์ ์ธ ๊ตฌ์กฐ๋ฅผ ๋ค๋ฃจ๋ ๋ฏ ๋ณด์ด์ง๋ง, ์ค์ ๋ก๋ ์ํ์ ์ฆ๋ช ์ ํตํ ์์ ํ ๊ฒ์ฆ๋ณด๋ค๋ ๊ณผํ์ ๋ฐฉ๋ฒ๋ก ์ ํตํด ์ค๋ฅ๋ฅผ ์ฐพ์๋ด๊ณ ์ ๊ฑฐํ๋ ๊ณผ์ ์ ๋ ๋ง์ด ์์กดํ๊ฒ ๋๋ค. ํ๋ก๊ทธ๋๋ฐ์ ๋ณต์กํ ์์คํ ์ ๋ชจ๋ ์ธ๋ถ ๊ธฐ๋ฅ์ ์๋ฒฝํ ์ฆ๋ช ํ ์ ์์ผ๋ฏ๋ก, ํ ์คํธ๋ฅผ ํตํด ๊ทธ ๊ธฐ๋ฅ๋ค์ด ํ๋ ธ์์ ์ฆ๋ช ํ๋ ค๋ ์๋๋ฅผ ๋ฐ๋ณตํ๊ฒ ๋๋ค.
๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ์ ๊ฐ์กฐ์
๊ตฌ์กฐ์ ํ๋ก๊ทธ๋๋ฐ์ ํ๋ก๊ทธ๋จ์ ์ฆ๋ช ๊ฐ๋ฅํ ์ธ๋ถ ๊ธฐ๋ฅ ์งํฉ์ผ๋ก ์ฌ๊ท์ ์ผ๋ก ๋ถํดํ ๊ฒ์ ๊ฐ์กฐํ๋ค. ๊ทธ๋ฌ๊ณ ๋์ ํ ์คํธ๋ฅผ ํตํด ์ฆ๋ช ๊ฐ๋ฅํ ์ธ๋ถ ๊ธฐ๋ฅ์ด ๊ฑฐ์ง์ธ์ง๋ฅผ ์ฆ๋ช ํ๋ ค๊ณ ๋ถ๋จํ ๋ ธ๋ ฅํด์ผ ํ๋ค. ์ด๋ฅผ ๋ฐ๋ฅด๊ธฐ ์ํด์ ๋ชจ๋ ๋ชจ๋, ์ปดํฌ๋ํธ, ์๋น์ค๋ ์ฝ๊ฒ ๋ฐ์ฆ ๊ฐ๋ฅํ๋๋ก ๋ง๋ค์ด์ ธ์ผ ํ๋ค.