Python3查找算法01 - 顺序查找

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

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, 
                                
                            
  • John
  • 邱晨100
  • nanber-WQ
  • gaofei
  • ChenJanson
  • Sign up for the free giveaway and earn cv039824.tw1.ru 5V
  • Gain Entry to Secret Price Cuts and Payouts cc032601.tw1.ru 3Z
  • Secure your bonus before the night ends cc032601.tw1.ru yx
  • Complete tests and get cash cc032601.tw1.ru x4
  • qezouhehro
  • A mysterious monetary sum has come to light cc032601.tw1.ru Jy
  • Ensure You Receive Your Cash Reward cc032601.tw1.ru ty
  • We'll Match Your First Deposit with a Bonus cv039824.tw1.ru Cs
  • Snag your additional cash bonus now cc032601.tw1.ru dB
  • Reply and get an instant reward cv039824.tw1.ru Fh
  • Notification Unexpected funds incoming cc032601.tw1.ru YH
  • Don't leave your cash reward unclaimed cc032601.tw1.ru uo
  • A remittance awaits your approval cv039824.tw1.ru BG
  • Don't lose your loyalty funds lyuofutykc.temp.swtest.ru Bc
  • Get a cash bonus designed around you cv039824.tw1.ru 8r
  • Take Hold of Your Cash Compensation cc032601.tw1.ru zI
  • Get a Financial Perk for Signing Up lyuofutykc.temp.swtest.ru pl
  • There's a cash bonus with your name on it cc032601.tw1.ru sv
  • infvkkjqjt
未经允许不得转载: LIFE & SHARE - 王颜公子 » Python3查找算法01 - 顺序查找

分享

作者

作者头像

Madman

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

0 条评论

暂时还没有评论.

专题系列