#coding:utf-8
#sort
#データの用意
import random
data = []
for i in range(10):
data.append(random.randint(1,50))
#print(data)
bsdata = data.copy()
print(bsdata)
n = len(bsdata)
#番兵付きバブルソート
flag = 0
for i in range(n):
flag = 0
for j in range(n-1, i, -1):
if bsdata[j] < bsdata[j-1]:
'''
temp = bsdata[j]
bsdata[j] = bsdata[j-1]
bsdata[j-1] = temp
'''
flag = 1
#python swap
bsdata[j],bsdata[j-1] = bsdata[j-1],bsdata[j]
if flag == 0:
print(i)
break
print("バブルソート",bsdata)
#python build-in
bidata = data.copy()
bidata.sort()
print("昇順reverse",bidata)
dedata = data.copy()
dedata.sort(reverse=True)
print("降順",dedata)
#文字例ソート
list1 = ["バナナ","リンゴ","なし","マンゴー","ブドウ"]
print(list1)
list2 = list1.copy()
list2.sort()
print(list2)
#文字ソートbynumber of letters:
def myfunc(e):
return len(e)
list3 = list1.copy()
list3.sort(key=myfunc)
print(list3)