Python 3 で数学を。

Python 3 とライブラリで数学の問題を解いていきます。統計学や機械学習はときどき。

アルゴリズム。逐次探索 (線形探索)。 Sequential Search (Python 3)

使用するライブラリ

なし

Python 3 コード

sequential_search.py

#!/usr/bin/env python3


"""(docstring)
"""


def sequential_search(collection, target):
    """(docstring)
    """
    # 最良: O(1)
    # 平均, 最悪: O(n)
    for elem in collection:
        if elem == target:
            return True
    return False


if __name__ == '__main__':
    collection = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    target1 = 1
    print(sequential_search(collection, target1))

    target2 = 10
    target3 = 5
    target4 = 100

    targets = [target1, target2, target3, target4]

    for t in targets:
        print(sequential_search(collection, t))

出力

$ python3 sequential_search.py
True
True
True
True
False

参考文献

アルゴリズムクイックリファレンス 第2版

アルゴリズムクイックリファレンス 第2版