Comparison Sorting Visualization


lst = [4,2,75,32,12,5,67,1,54]

print(lst)

for j in range(len(lst)):

    smallest_index = j

    for i in range(j,len(lst)):
        if lst[i] < lst[smallest_index] : 
            smallest_index = i 

    lst[smallest_index] , lst[j] = lst[j] , lst[smallest_index]

    print(lst)

print("Final sorted list : ")
print(lst)

image.png

Insertion sort Algorithm

image.png


lst = [32,43,12,56,65,42,11,23]

print(lst)

for i in range(1 , len(lst)):
    element = lst[i] 
    j = i-1 

    while ( element < lst[j] and j >= 0 ) :
        lst[j+1] = lst[j]
        j -= 1 

    lst[j+1] = element 
    print("Step : " , i , " : " , lst)

print(lst)

# lst = [12,32,43,56,65,42,11,23]

# lst = [12,32,42,43,56,65,11,23]

# lst = [11,12,32,42,43,56,65,23]

# lst = [11,12,23,32,42,43,56,65]

Merge Sort

  1. Merge two sorted list
  2. Breakdown list.

Merge two sorted list


lst1 = [3,5,9,10]
lst2 = [4,6,7,8,12]

finalList = []

i = 0 
j = 0 

while ( i < len(lst1) and j < len(lst2)):
    if lst1[i] < lst2[j] : 
        finalList.append(lst1[i])
        i = i + 1
    
    else : 
        finalList.append(lst2[j])
        j = j + 1 

while( i < len(lst1)):
    finalList.append(lst1[i])
    i = i + 1 

while ( j < len(lst2)) : 
    finalList.append(lst2[j])
    j = j + 1 

print(finalList)

image.png