Skip to content

Commit 19bad18

Browse files
committed
⚡ Added bubble sort, insertion sort, selection sort
1 parent 18a0ea5 commit 19bad18

File tree

3 files changed

+47
-0
lines changed

3 files changed

+47
-0
lines changed

sortingAlgo/bubbleSort/bubbleSort.py

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Testcase
2+
arr = [1, 63, 103, 3, 8, 74, 76, 37, 71, 66]
3+
lMinusOne = len(arr) - 1
4+
5+
def bubbleSort(arr):
6+
while True:
7+
swapped = False
8+
for i in range(lMinusOne):
9+
if arr[i] > arr[i + 1]:
10+
swapped = True
11+
arr[i], arr[i + 1] = arr[i + 1], arr[i]
12+
if swapped == False:
13+
return arr
14+
15+
print(bubbleSort(arr))
+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Testcase
2+
arr = [1, 63, 103, 3, 8, 74, 76, 37, 71, 66]
3+
l = len(arr)
4+
5+
def insertionSort(arr):
6+
for i in range(1,l):
7+
if arr[i] < arr[i - 1]:
8+
for j in range(i):
9+
if arr[i] < arr[j]:
10+
x = arr[i]
11+
del arr[i]
12+
arr.insert(j, x)
13+
return arr
14+
15+
print(insertionSort(arr))
16+
+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# Testcase
2+
arr = [63, 1, 103, 3, 8, 74, 76, 37, 71, 66]
3+
l = len(arr)
4+
5+
def selectionSort(arr):
6+
for i in range(l):
7+
idx = i
8+
iPlusOne = i + 1
9+
for j in range(iPlusOne, l):
10+
if arr[j] < arr[idx]:
11+
idx = j
12+
13+
arr[i], arr[idx] = arr[idx], arr[i]
14+
return arr
15+
16+
print(selectionSort(arr))

0 commit comments

Comments
 (0)