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()); }
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()); }
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(); }
public void Adding_An_Item_To_ModifiedStack_Changes_Minimum_Count() { DataStructures.ModifiedStack stack = new DataStructures.ModifiedStack(); stack.Push(2); Assert.AreEqual(2, stack.GetMinimumItem()); }