Skip to content

Instantly share code, notes, and snippets.

@goesang
Created June 23, 2015 14:07
Show Gist options
  • Save goesang/358fefa620c17c872705 to your computer and use it in GitHub Desktop.
Save goesang/358fefa620c17c872705 to your computer and use it in GitHub Desktop.
병합 정렬 자바스크립트 버젼.
function mergeSort(items){
if (items.length < 2) {
return items;
}
var middle = Math.floor(items.length / 2);
var left = items.slice(0, middle);
var right = items.slice(middle);
return merge(mergeSort(left), mergeSort(right));
}
function merge(left,right){
var result = [];
while ((0 < left.length )&&( 0 < right.length))
if (left[0] < right[0])
result.push(left.shift());
else
result.push(right.shift());
if(left.length)
return result.concat(left);
else
return result.concat(right);
}
alert(mergeSort([5,6,3,5,2,1,2]));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment