Python

Pythonで学ぶアルゴリズム 線形探索

線形探索を実装してみます。

概要

検索のアルゴリズムの一つ。 リストや配列に入ったデータに対する検索を行うにあたって、 先頭から順に比較を行い、それが見つかれば終了する。

線型探索 – Wikipedia

サンプルコード

import random


def linear_search(data, value):
    for i in range(len(data)):
        if data[i] == value:
            return i
    return -1


data = random.sample(range(1, 42), 10)
i = data[random.randint(1, 9)]
print("data : ", data)
print("target : ", i)
print("result : ", linear_search(data, i))

実行結果(例)

data :  [4, 2, 25, 40, 1, 26, 10, 9, 17, 38]
target :  38
result :  9