BohYoh.comトップページへ

新・明解Javaで学ぶアルゴリズムとデータ構造

戻る  

演習7-4の解答

 クラスIntSet に対して、集合s の部分集合であるかどうかを判定するメソッド、集合s の真部分集合であるかどうかを判定するメソッドを作成せよ。
  boolean isSubsetOf (IntSet s)  // 集合s の部分集合か
  boolean isProperSubsetOf (IntSet s )// 集合s の真部分集合か
 判定結果が成立すればtrueを、そうでなければfalseを返すこと。

    // 集合sの部分集合か     public boolean isSubsetOf(IntSet s) {         for (int i = 0; i < num; i++) {             int j = 0;             for ; j < s.num; j++)                 if (set[i== s.set[j])                     break;             if (j == s.num)                    // set[i]はsに含まれない                 return false;         }         return true;     }     // 集合sの真部分集合か     public boolean isProperSubsetOf(IntSet s) {         if (num >= s.num)                    // 要素数がs以上であれば             return false;                    // sの真部分集合ではない         return s.isSubsetOf(s);     }


戻る