python初级(302) 7 列表(排序练习)

一、复习:arr = [2, 7, 3, 5]

1 append(1), arr = [2, 7, 3, 5, 1]

2 remove(7), arr = [2, 3, 5, 1]

3 [1:3] 分片, brr = [3, 5]

二、 选择排序

[3, 10, 2, 7, 16]

第1次:[3, 10, 2, 7, 16]找出2, 放入新数组中[2]

第2次:[3, 10, 7, 16]找出3, 追加到新数组中[2, 3]

第3次:[10, 7, 16]找出7,追加到新数组中[2, 3, 7]

第4次:[10, 16]找出10,追加到新数组中[2, 3, 7, 10]

第5次:[16]找出16, 追加到新数组中[2, 3, 7, 10, 16]

排序完成

关键点:找到最小值

将arr[0]当作最小值num,然后从第1个开始直到最后,与之相比,小于num的就赋给num,最后将num返回过来。

代码:

def get_min(arr):
    num = arr[0]
    for i in range(1, len(arr)):
        if arr[i] < num:
            num = arr[i]
    return num

num = get_min([3, 9, 8, 4])
print(num)

num2 = get_min([9, 5, 7, 2, 10, 1])
print(num2)

num3 = get_min([15 18, 2, 3])
print(num3)

 

三、课后练习

找到最大值, 定义一个函数get_max(arr), 功能为找到队列中的最大值

函数写完后的验证代码为:

num = get_max([3, 9, 8, 4])
print(num)

num2 = get_max([9, 5, 7, 2, 10, 1])
print(num2)

num3 = get_max([15 18, 2, 3])
print(num3)
posted @ 2020-01-11 23:27  绿色的麦田  阅读(248)  评论(0编辑  收藏  举报