Exemple #1
0
 bool it_should_give_the_number_of_the_visited_subsets ()
 {
   ElementSet set ("S1", 3, 1);    // |S1| = 3
   CHCGA t;
   SubsetSum c (&set);
   t.set_parameters (&c, &set, true);
   t.get_minima_list (1);
   if ((t.print_list_of_visited_subsets ().size () /
       (set.get_set_cardinality() + 4)) >= 7)
     return true;
   else
     return false;
 }
Exemple #2
0
  bool a_random_element_should_be_removed ()
  {
    unsigned int i;
    ElementSet set ("S1",3,2);
    ElementSubset X ("X", &set);
    X.set_complete_subset ();

    i = X.remove_random_element ();
    if (!(((!X.has_element (0)) &&
           (X.has_element (1)) &&
           (X.has_element (2)) &&
           (i == 0)) ||
          ((X.has_element (0)) &&
           (!X.has_element (1)) &&
           (X.has_element (2)) &&
           (i == 1) ) ||
          ((X.has_element (0)) &&
           (X.has_element (1)) &&
           (!X.has_element (2)) &&
           (i == 2))))
      return false;

    X.remove_random_element ();
    if (X.is_empty ())
      return false;

    X.remove_random_element ();
    if (!X.is_empty ())
      return false;

    if ((X.is_empty ()) &&
        (X.remove_random_element () == set.get_set_cardinality ()))
      return true;
    else
      return false;
  }