private static void TestLinkedQueue() { ILinkedQueue<int> linkedQueue = new LinkedQueue<int>(); // Should return true var isEmpty = linkedQueue.IsEmpty(); linkedQueue.Enqueue(1); linkedQueue.Enqueue(2); linkedQueue.Enqueue(3); linkedQueue.Enqueue(4); // Should have 4 elements // Should remove first added element - (1) and return it var removedElement = linkedQueue.Dequeue(); // Should return first element - (2) var firstElement = linkedQueue.Peek(); // Should return 3 var count = linkedQueue.Count; // Should return false isEmpty = linkedQueue.IsEmpty(); }
public void EnqueueAndDequeueTest_ReferenceType() { IQueue <String> queue = new LinkedQueue <String>(); queue.Enqueue("1"); Assert.IsFalse(queue.IsEmpty()); Assert.AreEqual("1", queue.Peek()); Assert.AreEqual(1, queue.Size()); String value = queue.Dequeue(); Assert.IsTrue(queue.IsEmpty()); Assert.AreEqual(0, queue.Size()); Assert.AreEqual("1", value); }
public void EnqueueAndDequeueTest_ValueType() { IQueue <int> queue = new LinkedQueue <int>(); queue.Enqueue(1); Assert.IsFalse(queue.IsEmpty()); Assert.AreEqual(1, queue.Peek()); Assert.AreEqual(1, queue.Size()); int value = queue.Dequeue(); Assert.IsTrue(queue.IsEmpty()); Assert.AreEqual(0, queue.Size()); Assert.AreEqual(1, value); }
// Level Order: like LILO public IEnumerable <BiTreeNode <T> > LevelOrder(BiTreeNode <T> root) { if (root == null) { yield break; } var queue = new LinkedQueue <BiTreeNode <T> >(); queue.In(root); while (!queue.IsEmpty()) { var node = queue.Out(); yield return(node); if (node.LeftChild != null) { queue.In(node.LeftChild); } if (node.RightChild != null) { queue.In(node.RightChild); } } }
public void LinkedQueue_Works() { var queue = new LinkedQueue(); Assert.True(queue.IsEmpty()); queue.Enqueue("el1"); queue.Enqueue("el2"); queue.Enqueue("el3"); Assert.Equal("el1", queue.Dequeue()); Assert.Equal("el2", queue.Dequeue()); Assert.Equal("el3", queue.Dequeue()); Assert.True(queue.IsEmpty()); }
public void ConstructorTest() { IQueue <int> queue = new LinkedQueue <int>(); Assert.IsTrue(queue.IsEmpty()); Assert.AreEqual(0, queue.Size()); Assert.IsTrue(string.IsNullOrWhiteSpace(queue.ToString())); }
public void ManyEnqueueTest() { IQueue <int> queue = new LinkedQueue <int>(); for (int i = 0; i < 10; i++) { queue.Enqueue(i); Assert.IsFalse(queue.IsEmpty()); Assert.AreEqual(i + 1, queue.Size()); Assert.AreEqual(0, queue.Peek()); } }
public void ClearQueue_Queue_Should_Be_Empty() { // arrange var start_node_value = 1; var node = 2; IQueue <int> TestQueue = new LinkedQueue <int>(start_node_value); TestQueue.Enqueue(node); // act TestQueue.Clear(); // assert Assert.IsTrue(TestQueue.IsEmpty()); //Assert.AreEqual(null, TestQueue.First()); }
public void EmptyTest() { LinkedQueue2.Empty(); Assert.True(LinkedQueue2.IsEmpty()); }