예제 #1
0
 /** Testaa merge() t1 == null odotettu tulos: palauttaa null */
 @Test
 public void testaaT1NullMergeTest() {
   for (int i = 12; i >= 3; i--) {
     solmu = new Solmu(i);
     instanssi5.insert(solmu);
   }
   instanssi2 = null;
   assertNull(Dkeko.merge(instanssi2, instanssi5));
   assertNull(Dkeko.merge(instanssi5, instanssi2));
 }
예제 #2
0
 /**
  * Testaa merge() t1 >== t2 odotettu tulos: palauttaa uuden keko olion, jonka keon aste on sama
  * kuin t2 parametrina annetun keon aste
  */
 @Test
 public void testaaT1T2YhtasuuriaMergeTest() {
   for (int i = 900; i > 400; i--) {
     solmu = new Solmu(i);
     instanssi5.insert(solmu);
   }
   for (int i = 400; i >= 0; i--) {
     solmu = new Solmu(i);
     instanssi2.insert(solmu);
   }
   int summa = instanssi5.getHeapSize() + instanssi2.getHeapSize();
   instanssi = Dkeko.merge(instanssi2, instanssi5);
   assertEquals(0, instanssi.findMin().getValue());
   assertEquals(instanssi5.getAste(), instanssi.getAste());
   assertEquals(summa, instanssi.getHeapSize());
 }
예제 #3
0
 /**
  * Testaa merge() t1 > t2 odotettu tulos: palauttaa uuden keko olion, jonka keon aste on sama kuin
  * suuremman parametrina annetun keon aste
  */
 @Test
 public void testaaT1SuurempiMergeTest() {
   for (int i = 1200; i >= 300; i--) {
     solmu = new Solmu(i);
     instanssi5.insert(solmu);
   }
   for (int i = 200; i >= 1; i--) {
     solmu = new Solmu(i);
     instanssi2.insert(solmu);
   }
   int summa = instanssi5.getHeapSize() + instanssi2.getHeapSize();
   instanssi = Dkeko.merge(instanssi5, instanssi2);
   assertEquals(1, instanssi.findMin().getValue());
   assertEquals(instanssi5.getAste(), instanssi.getAste());
   assertEquals(summa, instanssi.getHeapSize());
 }
예제 #4
0
  /*
   * Testaa merge() ja mergeBottomUp() minimikekojen tulos
   */
  @Test
  public void testaaKekoLopputuloksetBothMergetTest() {
    int summa = instanssiT2.getHeapSize() + instanssiT1.getHeapSize();
    instanssiMergeBottomUp = Dkeko.mergeBottomUp(instanssiT1, instanssiT2);

    instanssiT1 = new Dkeko(2);
    instanssiT2 = new Dkeko(5);
    for (int i = 900; i > 400; i--) {
      solmuMerge = new Solmu(i);
      instanssiT2.insert(solmuMerge);
    }
    for (int i = 400; i >= 0; i--) {
      solmuMerge = new Solmu(i);
      instanssiT1.insert(solmuMerge);
    }
    instanssi = Dkeko.merge(instanssiT1, instanssiT2);

    for (int i = 0; i < instanssi.getHeapSize(); i++) {
      assertEquals(instanssi.deleteMin().getValue(), instanssiMergeBottomUp.deleteMin().getValue());
    }
  }