コード例 #1
0
ファイル: Q3.4-queue-via-stacks.cs プロジェクト: snail15/ctci
            public T remove()
            {
                if (oldStack.isEmpty())
                {
                    shiftStacks();
                }

                try
                {
                    return(oldStack.pop());
                }
                catch (EmptyStackException ex)
                {
                    throw new EmptyQueueException($"{ex.TargetSite.DeclaringType.FullName} --> {nameof(remove)}");
                }
            }
コード例 #2
0
ファイル: Q3.2-stack-min.cs プロジェクト: snail15/ctci
 public int min()
 {
     if (base.isEmpty())
     {
         throw new EmptyStackException();
     }
     return((stackForMin.isEmpty())
             ? int.MaxValue
             : stackForMin.peek());
 }