複数ターゲット検索 (Multiple Targets Search) アルゴリズム Java

複数ターゲット検索アルゴリズムは、 Java 配列またはリスト内で複数の値を同時に検索するために使用されるプログラミングの手法です。 このアプローチでは、複数の値を一度に検索することで検索プロセスが最適化され、時間を節約できます。

複数ターゲット検索アルゴリズムの仕組み

複数ターゲット検索アルゴリズムは、配列またはリストの各要素を反復処理し、それらを検索対象のターゲット値のリストと比較することによって機能します。 配列内の要素がターゲット値と一致する場合、その要素は結果リストに追加されます。

複数ターゲット検索アルゴリズムの長所と短所

利点:

  • 優れたパフォーマンス: このアルゴリズムは複数の値を一度に検索するため、複数の個別の検索を実行する場合に比べて時間を節約します。
  • 多用途: 複数のターゲットの検索が必要なさまざまなシナリオに適用できます。

短所:

  • メモリ消費量: 結果リストを保存する必要があるため、このアルゴリズムは単純な検索と比較してより多くのメモリを消費する可能性があります。

例と説明

複数ターゲット検索アルゴリズムを使用して、 の整数配列内の複数の特定の整数を検索する例を考えてみましょう Java。

import java.util.ArrayList;  
import java.util.List;  
  
public class MultipleTargetsSearchExample {  
    public static List<Integer> multipleTargetsSearch(int[] array, int[] targets) {  
        List<Integer> results = new ArrayList<>();  
  
        for(int target: targets) {  
            for(int i = 0; i < array.length; i++) {  
                if(array[i] == target) {  
                    results.add(i); // Add position to results if found  
                }  
            }  
        }  
  
        return results;  
    }  
  
    public static void main(String[] args) {  
        int[] numbers = { 4, 2, 7, 2, 9, 5, 7 };  
        int[] targets = { 2, 7 };  
  
        List<Integer> positions = multipleTargetsSearch(numbers, targets);  
  
        if(!positions.isEmpty()) {  
            System.out.println("Targets found at positions: " + positions);  
        } else {  
            System.out.println("Targets not found in the array");  
        }  
    }  
}  

この例では、複数ターゲット検索アルゴリズムを使用して、整数配列内の数値 2 と 7 を検索します。 アルゴリズムは配列を反復処理し、各要素をターゲット値のリストと比較します。 この場合、数値 2 は配列の位置 1 と 3 で見つかり、数値 7 は位置 2 と 6 で見つかります。

この例は、複数ターゲット検索アルゴリズムが複数の値を一度に検索する方法を示していますが、プログラミングのさまざまな検索シナリオにも適用できます Java。