Python練習——簡単なアルゴリズム
15326 ワード
最も基本的で最も簡単な2つのソートと検索をそれぞれ練習しました:バブルソート、選択ソート順検索、二分検索
List定義:list=[1,23,3233455,22,2]1.リストを定義して、このリストの最大値と最小値を求める.リストを定義してバブルソートを完了する3.リスト完了選択ソート4を定義します.リストを定義して一般的な検索検索を完了する22.秩序あるlistを定義して二分検索を完了します2
List定義:list=[1,23,3233455,22,2]1.リストを定義して、このリストの最大値と最小値を求める.リストを定義してバブルソートを完了する3.リスト完了選択ソート4を定義します.リストを定義して一般的な検索検索を完了する22.秩序あるlistを定義して二分検索を完了します2
print("1. list list ")
print("list1=[1,23,3,233,455,22,2]")
list1 = [1,23,3,233,455,22,2]
maxValue = list1[0]
minValue = list1[0]
for num in list1:
if num > maxValue:
maxValue = num
elif num < minValue:
minValue = num
print(" :%d; :%d" % (maxValue, minValue))
print("**************************************")
print("2. list ")
print("list=[1,23,3,233,455,22,2]")
l1 = [1,23,3,233,455,22,2]
len1 = len(l1)
#
for i in range(0, len1-1):
#
for j in range(0, len1 - 1 - i):
if l1[j] > l1[j + 1]:
# ,
temp = l1[j+1]
l1[j+1] = l1[j]
l1[j] = temp
print(l1)
print(" :", l1)
print("************************************")
print("3: list ")
print("list=[1,23,3,233,455,22,2]")
l2 = [1,23,3,233,455,22,2]
len2 = len(l2)
#
for i in range(len(l2) - 1):
#
for j in range(i + 1, len2):
if l2[i] > l2[j]:
temp = l2[i]
l2[i] = l2[j]
l2[j] = temp
print(l2)
print(" :", l2)
print("************************************")
#
print("4: list 22")
print("list=[1,23,3,233,455,22,2]")
l3 = [1,23,3,233,455,22,2]
key = 22
for i in range(0, len(l3)):
if l3[i] == key:
print("22 :%d" % i)
print("************************************")
#
# :
#
#
print("5: list 2")
print("list=[1,23,3,233,455,22,2]")
l4 = [1,23,3,233,455,22,2]
key = 2
len4 = len(l4)
Min = 0 #
Max = len4 - 1 #
Mid = 0 #
while Min <= Max:
Mid = (Min + Max)
if l4[Mid] > key:
Max = Mid - 1
elif l4[Mid] < key:
Min = Mid +1
else:
print("2 :%d" % Mid)
break
print("************************************")