Python3查找算法01 - 顺序查找

  • 原创
  • Madman
  • /
  • /
  • 0
  • 1598 次阅读

Synopsis: 先介绍一种最低效的查找算法,顺序查找,它适合于存储结构为顺序存储或链接存储的线性表。无序查找是被查找数列有序无序均可,有序查找是被查找数列必须为有序数列。输入的数列如果是有序的,我们可以稍微改进一下这个算法的效率

代码已上传到 https://github.com/wangy8961/python3-algorithms ,欢迎star

1. 顺序查找

顺序查找(Sequential Search)也称为线性查找,它从线性表的一端开始,顺序扫描,依次将扫描到的元素值与查找值比较,如果相等则表示查找成功,直接返回True;如果不等则继续往后遍历,当遍历完整个线性表还没有找到,则表示查找失败,返回False

2. 查找无序数列

def sequential_search(L, item):
    '''顺序查找,输入的列表是无序的'''
    pos = 0
    found = False  # 标记是否已找到数据项

    while pos < len(L) and not found:
        if L[pos] == item:  # 表示找到了
            found = True
        else:
            pos += 1

    return found


if __name__ == '__main__':
    L1 = [54, 26, 93, 17,
                                
                            
未经允许不得转载: LIFE & SHARE - 王颜公子 » Python3查找算法01 - 顺序查找

分享

作者

作者头像

Madman

如需 Linux / Python 相关问题付费解答,请按如下方式联系我

0 条评论

暂时还没有评论.