public void CanSort() { var t1 = new[] { 16, 14, 10, 8, 7, 9, 3, 2, 4, 1 }; FbHeapSort.Sort(t1); Assert.That(t1[0], Is.EqualTo(1)); Assert.That(t1[3], Is.EqualTo(4)); Assert.That(t1[9], Is.EqualTo(16)); }
public void CanBuildMaxHeap() { var t1 = new[] { 4, 1, 3, 2, 16, 9, 10, 14, 8, 7 }; FbHeapSort.BuildMaxHeap(t1); Assert.That(t1[2], Is.EqualTo(10)); Assert.That(t1[4], Is.EqualTo(7)); Assert.That(t1[9], Is.EqualTo(1)); }
public void CanMaxHeapify() { var t1 = new[] { 16, 4, 10, 14, 7, 9, 3, 2, 8, 1 }; FbHeapSort.MaxHeapify(t1, 1, t1.Length); Assert.That(t1[1], Is.EqualTo(14)); Assert.That(t1[3], Is.EqualTo(8)); Assert.That(t1[8], Is.EqualTo(4)); }
public void CanCalculateParent() { Assert.That(FbHeapSort.Parent(1), Is.EqualTo(0)); Assert.That(FbHeapSort.Parent(2), Is.EqualTo(0)); Assert.That(FbHeapSort.Parent(3), Is.EqualTo(1)); }
public int CanCalculateRight(int indexToFindRightOf) { return(FbHeapSort.Right(indexToFindRightOf)); }
public int CanCalculateLeft(int indexToFindLeftOf) { return(FbHeapSort.Left(indexToFindLeftOf)); }