広告スペース(バナー)
🔷Visual Basic(.NET) レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 61 / 68

HashSetで集合演算(和集合・積集合・差集合)をしよう

このレッスンでは、VB.NETのHashSetを使って和集合・積集合・差集合を求める方法を学び、集合演算の基本を理解することを目標にします。「VB.NET HashSet 集合演算」で調べている方向けです。

UnionWith()で和集合(どちらかに含まれる要素)、IntersectWith()で積集合(両方に共通する要素)、ExceptWith()で差集合(片方にしかない要素)を求められます。数学の集合の考え方をそのままコードで扱えます。

サンプルコードでは、{1, 2, 3, 4}{3, 4, 5, 6}という2つのHashSetに対して、それぞれのメソッドを適用し、和集合・積集合・差集合の結果を確認しています。元の集合を壊さないよう、コピーを作ってから演算している点にも注目してみましょう。

初心者がよくつまずくのが、これらのメソッドが呼び出し元のHashSet自体を直接書き換えてしまう点です。元のデータを保持しておきたい場合は、サンプルのようにNew HashSet(Of Integer)(a)でコピーを作ってから演算を行う必要があります。

実際の開発現場では、2つのグループに共通するユーザーを探したり、片方のリストにしかない項目を洗い出したりする場面で、集合演算の考え方がよく応用されます。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではVisual Basic(.NET)を直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
2つのグループの共通点や違いを調べる処理が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)