#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 built-in
bidata = data.copy()
bidata.sort()
print("昇順ソート",bidata)
dedata = data.copy()
dedata.sort(reverse=True)
print("昇順ソート",dedata)
#文字列ソート
list1 = ["apple","banana","grape","orange","mango"]
print(list1)
list2 = list1.copy()
list2.sort()
print(list2)
#文字列ソート
def myfunc(e):
return len(e)
list3 = list1.copy()
list3.sort(key=myfunc)
print(list3)