public static void evolve(Subset s1,Subset s2){
  int k=s1.getK();
  Set<Integer> p1set=s1.getSet();
  Set<Integer> p2set=s2.getSet();
  for (int i=0; i < k; i++) {
    if (!p1set.contains(s2.get(i)) && !p2set.contains(s1.get(i)) && PRNG.nextBoolean()) {
      int temp=s1.get(i);
      s1.set(i,s2.get(i));
      s2.set(i,temp);
    }
  }
}

public static void evolve ( Subset s1 , Subset s2 ) { int k = s1 . getK ( ) ; Set < Integer > p1set = s1 . getSet ( ) ; Set < Integer > p2set = s2 . getSet ( ) ; for ( int i = 0 ; i < k ; i ++ ) { if ( ! p1set . contains ( s2 . get ( i ) ) && ! p2set . contains ( s1 . get ( i ) ) && PRNG . nextBoolean ( ) ) { int temp = s1 . get ( i ) ; s1 . set ( i , s2 . get ( i ) ) ; s2 . set ( i , temp ) ; } } }
evolves the specified variables using the ssx operator .
