複数の配列の交差点を求める方法はJavaで何ですか。

複数の配列の共通部分を求めるには、HashSetを使用できます。具体的な手順は以下の通りです:

  1. 最初の配列をハッシュセットに変換してください。
  2. 他の配列を走査し、要素を最初の配列のHashSetに追加します。
  3. 最終的に、HashSetにはすべての配列の共通部分が含まれます。

以下はサンプルコードです。

import java.util.*;

public class ArrayIntersection {
    public static void main(String[] args) {
        int[] arr1 = {1, 2, 3, 4, 5};
        int[] arr2 = {3, 4, 5, 6, 7};
        int[] arr3 = {5, 6, 7, 8, 9};
        
        Set<Integer> set = new HashSet<>();
        for (int num : arr1) {
            set.add(num);
        }
        
        for (int i = 1; i < 3; i++) {
            Set<Integer> tempSet = new HashSet<>();
            for (int num : set) {
                if (contains(arr2, num) && contains(arr3, num)) {
                    tempSet.add(num);
                }
            }
            set = tempSet;
        }
        
        System.out.println("Intersection of arrays: " + set);
    }
    
    public static boolean contains(int[] arr, int num) {
        for (int i : arr) {
            if (i == num) {
                return true;
            }
        }
        return false;
    }
}

注意:このコードでは、containsメソッドが使用されており、配列に特定の要素が含まれているかどうかを判断するため、要素がすべての配列に含まれているかを簡単に判断できます。

コメントを残す 0

Your email address will not be published. Required fields are marked *


广告
広告は10秒後に閉じます。
bannerAds