ホームページ >バックエンド開発 >Python チュートリアル >Python リスト内の最大要素または最小要素のインデックスを見つける方法は?
minimax のようなアルゴリズムを実装する場合、リスト内の最大要素または最小要素のインデックスを決定します。リストは非常に重要です。 Python の組み込み max() 関数と min() 関数はこれらの値を提供しますが、対応するインデックスは示しません。
たとえば、リストの値 = [3, 6、1、5]。 min(values) を使用すると 1 が返されます。この最小値のインデックスを取得するには、次の手法を利用できます。
<code class="python">values = [3, 6, 1, 5] index_min = min(range(len(values)), key=values.__getitem__)</code>
この方法では、リスト値の長さに対応するインデックスの範囲。 key 関数を使用して、最小値の選択が値の各インデックスの項目に基づいて行われるように指定します。結果、index_min は、最小要素のインデックスになります。
<code class="python">import numpy as np values = [3, 6, 1, 5] index_min = np.argmin(values)</code>
numpy が使用可能な依存関係である場合、最小値のインデックスを直接提供する argmin() を使用できます。ただし、これには Python リストを numpy 配列に変換する必要があり、追加のメモリ コピーが必要になります。
ベンチマークでは、一般的に key 関数を使用した方法 1 の方が方法 2 よりも高速であることが示されています。特に小さなリストの場合は、numpy の argmin() を使用します。ただし、リストが大きい場合は、最適化されたベクトル化計算により、numpy の argmin() の方が効率的になる可能性があります。
以上がPython リスト内の最大要素または最小要素のインデックスを見つける方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。