Write a function insertionSort that implements the insertion
Solution
# python code
import sys
 import re
 def insertionSort(inputList):
    totalComparisons = 0
    # one comparsion per for loop to check if i has reached limit
    for i in range(1,len(inputList)):
        totalComparisons = totalComparisons + 1
        currValue = inputList[i]
        currPosition = i
        # two comparisons in envery iteration
        while currPosition>0 and inputList[currPosition-1]>currValue:
            totalComparisons = totalComparisons + 2
            inputList[currPosition]=inputList[currPosition-1]
            currPosition = currPosition-1
        inputList[currPosition]=currValue
    return totalComparisons,inputList
inputList = [4,3,7,1,8,2]
 print \"Input list: \",inputList
 comparisons,sortedList = insertionSort(inputList)
 print \"Sorted List: \", sortedList
 print \"Total comparisons: \",comparisons
 \'\'\'
 output:
Input list: [4, 3, 7, 1, 8, 2]
 Sorted List: [1, 2, 3, 4, 7, 8]
 Total comparisons: 21
 \'\'\'

