04_10、算法

  算法是解决问题放入高效方法

  常见的算法包括:二分法、冒泡算法、选择排序

一、二分法

  二分法是指,在顺序排列的组合中,高效找到所需值的一种方法。

  具体是不断对比中间的数值,判断所属范围在中间的左边或者右边。

  优点是对末尾数值方便快速查找,缺点是查找第一个数值比不了传统方法(for循环遍历查找)

l = [1, 2, 3, 4, 5, 6, 11, 22, 34, 44, 55, 66, 67, 333, 444]


def my_half(target_num, l):  # 
    # 1. 从列表中取一个中间值
    middle_index = len(l) // 2  # 7

    # 2. 比较
    if target_num > l[middle_index]:
        # 要找的元素在右边
        l_right = l[middle_index + 1:]
        my_half(target_num, l_right)
    elif target_num < l[middle_index]:
        # 要找的元素一定在左边
        l_left = l[:middle_index]
        my_half(target_num, l_left)
    else:
        print('找到了,哈哈哈哈')


my_half(34, l)

 

posted @ 2022-02-07 23:41  三三得九86  阅读(26)  评论(0)    收藏  举报