test_class.declarator: tester = new Heap<Integer>()
test_class.original_string: Heap<Integer> tester = new Heap<Integer>();
test_class.type: Heap<Integer>
test_class.var_name: tester
test_class.declarator: comp = new Heap.IntegerComparator()
test_class.original_string: Heap.IntegerComparator comp = new Heap.IntegerComparator();
test_class.type: Heap.IntegerComparator
test_class.var_name: comp
test_class.file: clrs/05_heapsort/src/ai/heapsort/HeapTest.java
test_class.identifier: HeapTest
test_case.body: @Test
  	public void testHeapsort() {
  		System.out.println("testHeapsort entry.");
  		List<Integer> before = Arrays.asList(4, 1, 3, 2, 16, 9, 10, 14, 8, 7);
  		List<Integer> expected = Arrays.asList(1, 2, 3, 4, 7, 8, 9, 10, 14, 16);
  		List<Integer> after = new ArrayList<Integer>(before.size());
  		for(Integer i: before) after.add(i);
  		Heap.heapsort(after);
  		System.out.println("after: " + after);
  		assertArrayEquals(expected.toArray(), after.toArray());		
  	}
test_case.class_method_signature: HeapTest.testHeapsort()
test_case.full_signature: @Test public void testHeapsort()
test_case.identifier: testHeapsort
test_case.invocations: println asList asList size add heapsort println assertArrayEquals toArray toArray
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testHeapsort()
focal_class.file: clrs/05_heapsort/src/ai/heapsort/Heap.java
focal_class.identifier: Heap
focal_class.class_method_signature: Heap.heapsort(List<T> A, Comparator<T> comp)
focal_class.full_signature: public static void heapsort(List<T> A, Comparator<T> comp)
focal_class.identifier: heapsort
focal_class.modifiers: public static
focal_class.parameters: (List<T> A, Comparator<T> comp)
focal_class.return: void
focal_class.signature: void heapsort(List<T> A, Comparator<T> comp)
focal_class.class_method_signature: Heap.heapsort(List<Integer> A)
focal_class.full_signature: public static void heapsort(List<Integer> A)
focal_class.identifier: heapsort
focal_class.modifiers: public static
focal_class.parameters: (List<Integer> A)
focal_class.return: void
focal_class.signature: void heapsort(List<Integer> A)
focal_class.class_method_signature: Heap.heapsort(List<T> A, Comparator<T> comp, int n)
focal_class.full_signature: public void heapsort(List<T> A, Comparator<T> comp, int n)
focal_class.identifier: heapsort
focal_class.modifiers: public
focal_class.parameters: (List<T> A, Comparator<T> comp, int n)
focal_class.return: void
focal_class.signature: void heapsort(List<T> A, Comparator<T> comp, int n)
focal_class.class_method_signature: Heap.maxHeapify(List<T> A, Comparator<T> comp, int i, int n)
focal_class.full_signature: public void maxHeapify(List<T> A, Comparator<T> comp, int i, int n)
focal_class.identifier: maxHeapify
focal_class.modifiers: public
focal_class.parameters: (List<T> A, Comparator<T> comp, int i, int n)
focal_class.return: void
focal_class.signature: void maxHeapify(List<T> A, Comparator<T> comp, int i, int n)
focal_class.class_method_signature: Heap.buildMaxHeap(List<T> A, Comparator<T> comp, int n)
focal_class.full_signature: public void buildMaxHeap(List<T> A, Comparator<T> comp, int n)
focal_class.identifier: buildMaxHeap
focal_class.modifiers: public
focal_class.parameters: (List<T> A, Comparator<T> comp, int n)
focal_class.return: void
focal_class.signature: void buildMaxHeap(List<T> A, Comparator<T> comp, int n)
focal_class.class_method_signature: Heap.getLeftChildIndex(List<T> A, int i)
focal_class.full_signature: private int getLeftChildIndex(List<T> A, int i)
focal_class.identifier: getLeftChildIndex
focal_class.modifiers: private
focal_class.parameters: (List<T> A, int i)
focal_class.return: int
focal_class.signature: int getLeftChildIndex(List<T> A, int i)
focal_class.class_method_signature: Heap.getRightChildIndex(List<T> A, int i)
focal_class.full_signature: private int getRightChildIndex(List<T> A, int i)
focal_class.identifier: getRightChildIndex
focal_class.modifiers: private
focal_class.parameters: (List<T> A, int i)
focal_class.return: int
focal_class.signature: int getRightChildIndex(List<T> A, int i)
focal_class.class_method_signature: Heap.swap(List<T> A, int i, int j)
focal_class.full_signature: private void swap(List<T> A, int i, int j)
focal_class.identifier: swap
focal_class.modifiers: private
focal_class.parameters: (List<T> A, int i, int j)
focal_class.return: void
focal_class.signature: void swap(List<T> A, int i, int j)
focal_method.body: public static <T> void heapsort(List<T> A, Comparator<T> comp) {
  		new Heap<T>().heapsort(A, comp, A.size());
  	}
focal_method.class_method_signature: Heap.heapsort(List<T> A, Comparator<T> comp)
focal_method.full_signature: public static void heapsort(List<T> A, Comparator<T> comp)
focal_method.identifier: heapsort
focal_method.invocations: heapsort size
focal_method.modifiers: public static
focal_method.parameters: (List<T> A, Comparator<T> comp)
focal_method.return: void
focal_method.signature: void heapsort(List<T> A, Comparator<T> comp)