public void Test_1() { var iterator = new BstIterator(new TreeNode(1)); Assert.True(iterator.HasNext()); Assert.Equal(1, iterator.Next()); Assert.False(iterator.HasNext()); }
public void insert(int key, T value) { if (head == null) { head = new TreeNode <T>(key, value); iterator = new BstIterator(head); size++; cnt++; } else { insert(head, key, value); cnt++; } }
public void Test_5() { var node2 = new TreeNode(2); var node3 = new TreeNode(3); var node1 = new TreeNode(1); node3.left = node1; node1.right = node2; var iterator = new BstIterator(node3); Assert.True(iterator.HasNext()); Assert.Equal(1, iterator.Next()); Assert.True(iterator.HasNext()); Assert.Equal(2, iterator.Next()); Assert.True(iterator.HasNext()); Assert.Equal(3, iterator.Next()); Assert.False(iterator.HasNext()); }