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

์‹œ์Šคํ…œ๊ฐœ๋ฐœ/์ž๋ฃŒ๊ตฌ์กฐ๋ž‘์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณต๋ทฐ7

์„ ํƒ ์ •๋ ฌ, Selection Sort ์ž…๋ ฅ : ๊ฐ™์€ ํƒ€์ž…์˜ ๋ณ€์ˆ˜๋ฅผ ๊ฐ€์ง„ ๋ฐฐ์—ด ์ถœ๋ ฅ : ํ•ด๋‹น ํƒ€์ž…์˜ ์˜ค๋ฆ„์ฐจ์ˆœ / ๋‚ด๋ฆผ์ฐจ์ˆœ์— ๋”ฐ๋ฅธ ์ •๋ ฌ๋œ ๋ฐฐ์—ด ๋น…์˜ค ํ‘œ๊ธฐ๋ฒ• : O(n^2) *๋น…์˜ค ํ‘œ๊ธฐ๋ฒ•์— ๋Œ€ํ•ด. O(n) : ๋ชจ๋“  ์›์†Œ๋ฅผ ํ•œ ๋ฒˆ์”ฉ ๊ฑด๋“œ๋ ค์•ผ ํ•œ๋‹ค๋Š” ๋œป. ์˜ˆ) ๊ฐ€์ˆ˜ ๋ชฉ๋ก์—์„œ ๊ฐ€์ˆ˜๋ฅผ ์ฐพ์•„๋ณด์ž. ์ด ์ค‘ ๊ฐ€์žฅ ์—ฐ์ฃผ ํšŸ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ๋งŽ์€ ๊ฐ€์ˆ˜๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด์„  ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์ ๊ฒ€ํ•ด์•ผํ•จ. -> ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์ ๊ฒ€ํ•˜๋ฏ€๋กœ O(n), ์ด๋ฅผ n๋ฒˆ ๋ฐ˜๋ณตํ•ด์„œ ๋ชฉ๋ก์„ ์ •๋ ฌํ•ด์•ผํ•จ. => O(n) #javascript var list = [3,55,1,33, 44, 20, 9, 7, 15, 49]; console.log("Before Selection Sort : " + list); console.log("After Selection Sort : "); console.log(selec.. 2019. 5. 19.
๋‹จ์ˆœ ํƒ์ƒ‰, Simple Search ์ž…๋ ฅ : ์ •๋ ฌ๋œ ๋ฐฐ์—ด ์ถœ๋ ฅ : ์ •๋ ฌ๋œ ๋ฐฐ์—ด์—์„œ ์ฐพ๋Š” ์›์†Œ๊ฐ€ ์กด์žฌํ•˜๋ฉด ํ•ด๋‹น ์ธ๋ฑ์Šค, ์—†์œผ๋ฉด null. ๋น…์˜คํ‘œ๊ธฐ๋ฒ• : O(n) #javascript //์ •๋ ฌ๋œ ๋ฐฐ์—ด var list=[1,2,3,4,5,7,10,33,57]; //์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’ var search = 57; function simpleSearch(_list, find) { var idx = -1; for(var i = 0 ; i < _list.length; ++i) { if( _list[i] == find) { idx = i; break; } } return idx; } console.log("Simple Search : " + simpleSearch(list, search)); ์ฝ”๋“œ๊ฐ€ ๊ฐ„๋‹จํ•˜์ง€๋งŒ. ์ตœ์•…์˜ ๊ฒ€์ƒ‰๋ฐฉ๋ฒ•์ด๋‹ค. ๋งŒ์•ฝ 1์–ต๊ฐœ์˜ ์ด๋ฆ„์ด .. 2019. 5. 19.
์ด์ง„ ํƒ์ƒ‰, Binary Search ์ž…๋ ฅ : ์ •๋ ฌ๋œ ์›์†Œ ๋ฆฌ์ŠคํŠธ ์ถœ๋ ฅ : ์ž…๋ ฅ๋ฐ›์€ ์›์†Œ ๋ฆฌ์ŠคํŠธ์—์„œ ์ฐพ๋Š” ๊ฐ’์ด ์—†์œผ๋ฉด null์„ ๋ฐ˜ํ™˜, ์ฐพ์œผ๋ฉด ๋ฆฌ์ŠคํŠธ์—์„œ ์ธ๋ฑ์Šค(์œ„์น˜)๋ฅผ ๋ฐ˜ํ™˜. ๋น…์˜ค ํ‘œ๊ธฐ๋ฒ• : O(log n) #javascript //์ •๋ ฌ๋œ ๋ฐฐ์—ด var list=[1,2,3,4,5,7,10,33,57]; //์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’ var search = 33; function binarySearch(list , find) { var start = 0; var end = list.length-1; var cnt = 1; var mid =-1; while(1) { //๊ทธ๋ƒฅ ๋‚˜๋ˆ„๊ธฐ 2๋ฅผ ํ–ˆ๋”๋‹ˆ ์†Œ์ˆ˜์  ๊ฐ’์ด ์ถœ๋ ฅ๋˜์–ด์„œ idx๊ณ„์‚ฐ์ด ์•ˆ๋˜๋”๋ผ. //๊ฐ•์ œ๋กœ ํ˜•๋ณ€ํ™˜. mid = parseInt((start+end)/2); //ํ•ด๋‹น ๋ฐฐ์—ด์˜ ๊ฐ€์žฅ ์ค‘๊ฐ„๊ฐ’์„ ์„ ํƒ. v.. 2019. 5. 19.