//[Test] public static void QueueWithMin_Test() { QueueWithMin qwm = new QueueWithMin(); qwm.Enqueue(3); Console.WriteLine("min = " + qwm.Min()); qwm.Enqueue(2); Console.WriteLine("min = " + qwm.Min()); qwm.Enqueue(1); Console.WriteLine("min = " + qwm.Min()); qwm.Enqueue(4); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); qwm.Enqueue(6); Console.WriteLine("min = " + qwm.Min()); qwm.Enqueue(7); Console.WriteLine("min = " + qwm.Min()); qwm.Enqueue(5); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); Console.WriteLine("min = " + qwm.Min()); Console.WriteLine("dequeue = " + qwm.Dequeue()); try { Console.WriteLine("min = " + qwm.Min()); } catch (OverflowException) { Console.WriteLine("Overflow exception caught."); } }