I'm trying to do Bubble Sort in Python, without making functions, importing functions, etc.
I've gotten this so far, but now I'm stumped :p
array = [1, 42, 321, 44, 121, 61, 812, 71, 10, 11]
number = 1
ArrayIndex = 0
numchange = 0
TotalNumberofLoops = 10
OuterLoop = 0
InnerLoop = 0
while OuterLoop < TotalNumberofLoops:
InnerLoop = OuterLoop + 1
while InnerLoop < TotalNumberofLoops:
if array[OuterLoop] < array[InnerLoop]:
numchange = array[InnerLoop]
array[OuterLoop] = array[InnerLoop]
array[InnerLoop] = numchange
InnerLoop=InnerLoop + 1
print array
OuterLoop = OuterLoop + 1
This gives the following output:
[812, 42, 321, 44, 121, 61, 812, 71, 10, 11]
[812, 812, 321, 44, 121, 61, 812, 71, 10, 11]
[812, 812, 812, 44, 121, 61, 812, 71, 10, 11]
[812, 812, 812, 812, 121, 61, 812, 71, 10, 11]
[812, 812, 812, 812, 812, 61, 812, 71, 10, 11]
[812, 812, 812, 812, 812, 812, 812, 71, 10, 11]
[812, 812, 812, 812, 812, 812, 812, 71, 10, 11]
[812, 812, 812, 812, 812, 812, 812, 71, 10, 11]
[812, 812, 812, 812, 812, 812, 812, 71, 11, 11]
[812, 812, 812, 812, 812, 812, 812, 71, 11, 11]
Thanks for any solutions!
Try this:
array = [1, 42, 321, 44, 121, 61, 812, 71, 10, 11]
number = 1
ArrayIndex = 0
numchange = 0
TotalNumberofLoops = 10
OuterLoop = 0
InnerLoop = 0
while OuterLoop < TotalNumberofLoops:
InnerLoop = OuterLoop + 1
while InnerLoop < TotalNumberofLoops:
if array[OuterLoop] < array[InnerLoop]:
array[OuterLoop], array[InnerLoop] = array[InnerLoop], array[OuterLoop]
InnerLoop = InnerLoop + 1
print(array)
OuterLoop = OuterLoop + 1
This way the swap of elements is more pythonic and also correct.