Q3:
b)i)
NumberArray=[100,85,644,22,15,8,1]
def RecursiveInsertion(NumberArray,NumberElements):
if NumberElements == 1:
return NumberArray
else:
RecursiveInsertion(NumberArray, NumberElements - 1)
LastItem = NumberArray(NumberElements-1)
CheckItem = NumberElements-2
LoopAgain=True
if CheckItem<0:
LoopAgain=False
else:
if NumberArray[CheckItem] < LastItem:
LoopAgain=False
while LoopAgain:
NumberArray[CheckItem + 1] = NumberArray[CheckItem]
CheckItem = CheckItem - 1
if CheckItem < 0:
LoopAgain=False
else:
if NumberArray[CheckItem] < LastItem:
LoopAgain=False
NumberArray[CheckItem + 1]=LastItem
return NumberArray
ii)
NumberArray=[100,85,644,22,15,8,1]
def RecursiveInsertion(NumberArray,NumberElement):
if NumberElement <= 1:
return NumberArray
RecursiveInsertion(NumberArray, NumberElement - 1)
LastItem = NumberArray[NumberElement-1]
CheckItem = NumberElement-2
LoopAgain=True
if CheckItem<0:
LoopAgain=False
else:
if NumberArray[CheckItem] < LastItem:
LoopAgain=False
while LoopAgain:
NumberArray[CheckItem + 1] == NumberArray[CheckItem]
CheckItem = CheckItem - 1
if CheckItem < 0:
LoopAgain=False
else:
if NumberArray[CheckItem] < LastItem:
LoopAgain=False
NumberArray[CheckItem + 1]==LastItem
return NumberArray
print(RecursiveInsertion(NumberArray,7))
print("Recursive")
iii)