Example #1
0
 public void MinStack_Count_Less_Than_Stack_Count_For_One_Million_Items_Modified()
 {
     DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack();
     for (int i = 0; i < 1000000; i++)
     {
         stack.Push(i);
     }
     Assert.AreNotEqual(1000000, stack.GetMinStackCount());
 }
Example #2
0
 public void Adding_Items_To_ModifiedStack_In_Descending_Order_Sets_Minimum_To_Last_Value()
 {
     DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack();
     stack.Push(5);
     stack.Push(4);
     stack.Push(3);
     stack.Push(2);
     stack.Push(1);
     Assert.AreEqual(1, stack.GetMinimumItem());
 }
Example #3
0
        public void GetMinimum_Runs_In_Constant_Time_For_One_Million_Items_Modified()
        {
            System.Diagnostics.Stopwatch watch = new System.Diagnostics.Stopwatch();

            DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack();

            for (int i = 0; i <= 1000000; i++)
            {
                stack.Push(i);
            }
            watch.Start();
            int result = stack.GetMinimumItem();

            watch.Stop();
        }
Example #4
0
 public void GetMinimum_Returns_Zero_For_Empty_ModifiedStack()
 {
     DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack();
     Assert.AreEqual(0, stack.GetMinimumItem());
 }
Example #5
0
 public void Adding_An_Item_To_ModifiedStack_Changes_Minimum_Count()
 {
     DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack();
     stack.Push(2);
     Assert.AreEqual(2, stack.GetMinimumItem());
 }