|
发表于 2019-8-6 16:58:57
|
显示全部楼层
交作业,冒泡法想了半天,还是Python内置方法厉害!!
- #解法1:写出所有两两比较过程,仅适用于较小数量。
- def answer1(x,y,z):
- if x > y:
- t = x
- x = y
- y = t
- if x >z:
- t = x
- x = z
- z = t
- if y > z:
- y, z = z, y
- print(x, y, z)
- #解法2:冒泡法,for语句循环比较
- def answer2(list):
- for i in range(len(list)):
- for j in range(i+1, len(list)):
- if list[i] > list[j]:
- list[i], list[j] = list[j], list[i]
- print(list)
- #解法3:使用列表sort方法正序排列
- def answer3(list):
- list.sort()
- print(list)
- if __name__ == "__main__":
- x = int(input("请输入第1个整数"))
- y = int(input("请输入第2个整数"))
- z = int(input("请输入第3个整数"))
- list1 = [x,y,z] #三个整数调整为列表序列
- print(list1) #初始顺序
- print("方法1排序后:")
- answer1(x,y,z)
- print("=============")
- print(list1) #初始顺序
- print("方法2排序后:")
- answer2(list1[:]) #传入原始列表拷贝
- print("=============")
- print(list1)
- print("方法3排序后:")
- answer3(list1[:]) #传入原始列表拷贝
复制代码 |
|