Merge sort : which is the correct method?

I found two different implementations of merge sort.
The first one, merges two sorted arrays into one single array.

http://mathbits.com/mathbits/compsci/arrays/Merge.htm

And the second one recursively divide the list into
two halves until one element left, and merges the already sorted
two halves into a sorted one.

http://en.wikipedia.org/wiki/Merge_sort

I was just wondering, which one is the true definition? Both the implementations are quite similar, but in first case, it doesn't use recursion and merges array into an another array while in second case, it uses divide and conquer method.

Thanks in advance :)
The first one describes what is called a merge, which is an algorithm for merging 2 arrays, this usually runs with O(n) complexity. However the problem is that the 2 arrays have to be sorted for a merge to work. So how do you get a sorted array? By splitting it into multiple one element lists, you can then merge the one element lists together again and again(Log 2 N times) to get a complete sorted list. This process is called the merge sort.

So in short, the second one is what is known as a merge sort.
Topic archived. No new replies allowed.