From 9c3f0d6a51f4c62744744f41ea9d79683d676c58 Mon Sep 17 00:00:00 2001 From: Ismail Date: Fri, 30 Jan 2026 21:12:01 -0600 Subject: [PATCH 1/2] add sorting --- Python/sorting/merge sort.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Python/sorting/merge sort.py diff --git a/Python/sorting/merge sort.py b/Python/sorting/merge sort.py new file mode 100644 index 00000000..80ca16b4 --- /dev/null +++ b/Python/sorting/merge sort.py @@ -0,0 +1,26 @@ +def merge_sort(arr): + if len(arr) <= 1: + return arr + + mid = len(arr) // 2 + left = merge_sort(arr[:mid]) + right = merge_sort(arr[mid:]) + + return merge(left, right) + + +def merge(left, right): + result = [] + i = j = 0 + + while i < len(left) and j < len(right): + if left[i] <= right[j]: + result.append(left[i]) + i += 1 + else: + result.append(right[j]) + j += 1 + + result.extend(left[i:]) + result.extend(right[j:]) + return result From ca6734a8329f119ae62c0b27c280fc18c791ccfc Mon Sep 17 00:00:00 2001 From: Ismail Date: Fri, 30 Jan 2026 21:32:04 -0600 Subject: [PATCH 2/2] add more sorting algorithms --- Python/sorting/quick sort.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 Python/sorting/quick sort.py diff --git a/Python/sorting/quick sort.py b/Python/sorting/quick sort.py new file mode 100644 index 00000000..9e5e1ec1 --- /dev/null +++ b/Python/sorting/quick sort.py @@ -0,0 +1,19 @@ +def quick_sort(arr): + if len(arr) <= 1: + return arr[:] + + pivot = arr[0] + + less = [] + equal = [] + greater = [] + + for x in arr: + if x < pivot: + less.append(x) + elif x == pivot: + equal.append(x) + else: + greater.append(x) + + return quick_sort(less) + equal + quick_sort(greater)