1. Sequential Search Algorithm (์์ฐจ ํ์)
--->
์์ฐจ ํ์(Sequential Search)์ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๊ธฐ ์ํด ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ์์๋๋ก ํ์ธํ๋ ํ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค.
1. ์๊ณ ๋ฆฌ์ฆ ๋์ ์๋ฆฌ
- ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ํ์์ ์์ํฉ๋๋ค.
- ํ์ฌ ์์๊ฐ ์ฐพ๊ณ ์ ํ๋ ๊ฐ๊ณผ ๊ฐ๋ค๋ฉด ํ์์ ์ข ๋ฃํฉ๋๋ค.
- ์ผ์นํ์ง ์์ผ๋ฉด ๋ค์ ์์๋ก ์ด๋ํฉ๋๋ค.
- ๋ฆฌ์คํธ์ ๋๊น์ง ํ์ํ์์๋ ์ฐพ๊ณ ์ ํ๋ ๊ฐ์ด ์๋ค๋ฉด, ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ์ง ์๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํฉ๋๋ค.
2. Binary Search (์ด์ง ํ์)
--->
์ด์ง ํ์์ ๋ฆฌ์คํธ๋ฅผ ๋ฐ์ผ๋ก ๋๋์ด ํ์์ ํ๋ ๋ฐฉ์์ด๋ค.
๋ฆฌ์คํธ์ ์ค๊ฐ ๊ฐ์ธ mid์ ์ฐพ๊ณ ์ ํ๋ key๊ฐ์ ์ค์ ํ ํ์ mid๊ฐ์ ์ฎ๊ฒจ๊ฐ๋ฉฐ
key๊ฐ์ ์ฐพ๋ ํ์์ ์งํํ๋ค.
์ด๋ฅผ ์์ฌ ์ฝ๋๋ก ํ๋ฒ ์์๋ณด์
์๊ณ ๋ฆฌ์ฆ์ผ๋ก ๋ํ๋ธ ์ด์ง ํ์ ์ฝ๋์ด๋ค.
๋น์นธ1 : location = mid; ์ด์ง ํ์์ ํ๊ธฐ ์ํด mid๋ฅผ ์ค์ ํ๋๋ฐ key๊ฐ์ธ ๊ฒฝ์ฐ์ด๋ค.
๋น์นธ2 : low = mid + 1 ,mid๊ฐ์ ์ค๋ฅธ์ชฝ์ผ๋ก ์ฎ๊ฒจ์ฃผ๋ ์ ์ฐจ์ด๋ค.
๋ ์๊ณ ๋ฆฌ์ฆ์ ๋น๊ตํด๋ณด๋ฉด, ์ด์ง ํ์์ ์์ฐจ ํ์์ ๋นํด์ ๋น๊ต์ ๋น ๋ฅด๊ฒ key๊ฐ์ ์ฐพ์ ์ ์๋ ์ฅ์ ์ ๊ฐ์ก๋ค.
์์ฐจํ์์ ์ต์ ์ ๊ฒฝ์ฐ์๋ ๋ชจ๋ ๋ฆฌ์คํธ๋ฅผ ํ์ธํด์ผํ๋ ๋จ์ ์ด ์กด์ฌํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ด๋ฅผ ๋น๊ตํด์ฃผ๋ ํ๋ฅผ ํ์ธํด๋ณด์.
์ด๋ ์ต์ ์ ๊ฒฝ์ฐ๋ฅผ ์์ ํ์ ๋์ ํ์ ํ์์ด๋ค.
