1 21 package com.db4o.db4ounit.common.foundation; 22 23 import com.db4o.foundation.*; 24 25 import db4ounit.*; 26 27 public class Algorithms4TestCase implements TestCase { 28 29 public static class QuickSortableIntArray implements QuickSortable4{ 30 31 private int[] ints; 32 33 public QuickSortableIntArray(int[] ints) { 34 this.ints = ints; 35 } 36 37 public int compare(int leftIndex, int rightIndex) { 38 return ints[leftIndex] - ints[rightIndex]; 39 } 40 41 public int size() { 42 return ints.length; 43 } 44 45 public void swap(int leftIndex, int rightIndex) { 46 int temp = ints[leftIndex]; 47 ints[leftIndex] = ints[rightIndex]; 48 ints[rightIndex] = temp; 49 } 50 51 public void assertSorted(){ 52 for (int i = 0; i < ints.length; i++) { 53 Assert.areEqual( i + 1, ints[i]); 54 } 55 } 56 } 57 58 public void testUnsorted(){ 59 int[] ints = new int[]{ 3 , 5, 2 , 1, 4 }; 60 assertQSort(ints); 61 } 62 63 public void testStackUsage(){ 64 int[] ints = new int[50000]; 65 for(int i=0;i<ints.length;i++) { 66 ints[i]=i+1; 67 } 68 assertQSort(ints); 69 } 70 71 private void assertQSort(int[] ints) { 72 QuickSortableIntArray sample = new QuickSortableIntArray(ints); 73 Algorithms4.qsort(sample); 74 sample.assertSorted(); 75 } 76 77 78 } 79 | Popular Tags |