查找算法-顺序查找
1.查找算法:从n个元素中查找x值是否存在。
2.顺序查找:重头到尾逐个查找。
3.顺序查找的情况:
(1)第一次项找到
(2)比较n次未找到
(3)比较n/2次
4.1在列表中顺序查找特定值x。
def sequential_search(lst, target):pos = 0 # 初始位置while pos<len(lst):if lst[pos] == target:return poselse:pos = pos+1return -1def main():testlist = [1,3,6,8,5,7,9]print( sequential_search(testlist,10))print(f'索引位置:{sequential_search(testlist,3)}')if __name__ == '__main__':main()
4.2在列表中顺序查找最大值和最小值。
def max_search(lst):max_num = lst[0]for target in lst:if target>max_num:max_num = targetreturn max_numdef min_search(lst):min_num = lst[0]for target in lst:if target<min_num:min_num = targetreturn min_numdef main():testlist = [1,3,5,2,4,6,8,7,9]print(f'最大值:{max_search(testlist)}')print(f'最小值:{min_search(testlist)}')if __name__ == '__main__':main()