MergeSort 1

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ - ํ•ฉ๋ณ‘ ์ •๋ ฌ Merge Sort

ํ•ฉ๋ณ‘ ์ •๋ ฌ (Merge Sort) ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๋ฐฐ์—ด์„ ์•ž๋ถ€๋ถ„๊ณผ ๋’ท๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋ˆ„์–ด ๊ฐ๊ฐ ์ •๋ ฌํ•œ ๋‹ค์Œ ๋ณ‘ํ•ฉํ•˜๋Š” ์ž‘์—…์„ ๋ฐ˜๋ณตํ•˜์—ฌ ์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ int[] merge = {8, 1, 4, 2, 7, 6, 3, 5} 1. ๋ฐฐ์—ด์„ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆˆ๋‹ค 2. ์•ž๋ถ€๋ถ„์„ ํ•ฉ๋ณ‘์ •๋ ฌ๋กœ ์ •๋ ฌํ•œ๋‹ค 3. ๋’ท๋ถ€๋ถ„์„ ํ•ฉ๋ณ‘์ •๋ ฌ๋กœ ์ •๋ ฌํ•œ๋‹ค 4. ์•ž๋ถ€๋ถ„๊ณผ ๋’ท๋ถ€๋ถ„์„ ๋ณ‘ํ•ฉํ•œ๋‹ค 4-1. ์•ž๋ถ€๋ถ„์„ ๋ฐฐ์—ด buff์— ๋ณต์‚ฌ 4-2. ๋ฐฐ์—ด buff์™€ ๋’ท๋ถ€๋ถ„์„ ๋ฐฐ์—ด a์— ๋ณ‘ํ•ฉ 4-3. ๋ฐฐ์—ด buff์˜ ๋‚˜๋จธ์ง€ ์š”์†Œ๋ฅผ ๋ฐฐ์—ด a์— ๋ณต์‚ฌ ๋ฉ”์„œ๋“œ mergeSort() : ๋ฐฐ์—ด a์˜ ํฌ๊ธฐ n๊ณผ ๊ฐ™์€ ํฌ๊ธฐ์˜ ๋ฐฐ์—ด buff๋ฅผ ์„ ์–ธํ•˜๊ณ , mergetSort()๋ฅผ ์‹คํ–‰ ํ›„ ์ •๋ ฌ์ด ๋๋‚˜๋ฉด ๋ฐฐ์—ด buff๋ฅผ ํ•ด์ œ ๋งค๊ฐœ๋ณ€์ˆ˜ : int[] a, int n ๋ฉ”์„œ๋“œ mergeSo..