divide and conquer sorting algorithm python