docs: add Merge Sort (#246)

pull/261/head
Tawfik Yasser 2021-04-25 01:39:38 +02:00 committed by GitHub
parent 56d42f2287
commit b4bbc3a68a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 27 additions and 0 deletions

View File

@ -1,4 +1,6 @@
# Algorithms
## Sorting
- [Merge Sort](./Sorting/Merge-Sort.md)
## Strings
- [Palindrome](./Strings/Palindrome.md)

View File

@ -0,0 +1,25 @@
# Merge Sort
Merge Sort is a Divide and Conquer algorithm. It divides the input array into two halves, calls itself for the two halves, and then merges the two sorted halves.
## Steps
1. Find the middle point to divide the array into two halves.
2. Call mergeSort for first half.
3. Call mergeSort for second half.
4. Merge the two halves sorted in step 2 and 3.
## Example
Given array is
**12 11 13 5 6 7**
Sorted array is
**5 6 7 11 12 13**
## Implementation
- [Java](../../../algorithms/Java/sorting/merge-sort.java)
- [C](../../../algorithms/C/sorting/merge-sort.c)
## Video URL
[Youtube Video about Merge Sort](https://www.youtube.com/watch?v=jlHkDBEumP0)
## Others
[Wikipedia](https://en.wikipedia.org/wiki/Merge_sort)