020-002-012

集合演算(和集合・積集合・差集合)

上級

問題説明

集合演算(和集合・積集合・差集合)

この問題では: SetOperationsクラスを作成し、2つのコレクション(HashSet)に対して和集合(union)、積集合(intersection)、差集合(difference)の集合演算を実装するプログラムを作成します。

学習目標: Setを使った集合演算(addAll, retainAll, removeAll)の実装方法を理解する

概要

数学の集合演算をJavaのSetで実現します。addAllで和集合、retainAllで積集合、removeAllで差集合を計算できます。元のセットを変更しないよう、操作前にコピーを作成します。

仕様

  • SetOperationsクラスに3つのstaticメソッドを実装
  • union(Set, Set): 和集合を返す
  • intersection(Set, Set): 積集合を返す
  • difference(Set, Set): 差集合(第1引数 - 第2引数)を返す
  • 結果をTreeSetに変換してソート済みで出力

出力形式

Set A: [1, 2, 3, 4, 5]
Set B: [3, 4, 5, 6, 7]
Union: [1, 2, 3, 4, 5, 6, 7]
Intersection: [3, 4, 5]
Difference (A-B): [1, 2]

コードを実行してみませんか?

この問題のコードエディタと実行機能を使用するには、ログインしてください。

アカウントをお持ちでない方

新規登録