@Shravan: Push can be written more compactly as

void push(int num)
{
    stk1.push(num);
    if(stk2.isEmpty() || num<=stk2.top())
        stk2.push(num);
}

Then don't forget min:

int min()
{
    return stk2.top();
}

Dave

On Sep 6, 7:56 am, Shravan Kumar <shrava...@gmail.com> wrote:
> void push(int num){
>     if(stk1.isEmpty()){
>         stk1.push(num);
>         stk2.push(num);
>      }
>    else{
>        if(num>stk2.top())stk1.push(num);
>        else{stk1.push(num);stk2.push(num)}
>   }
>
> }
>
> int pop(){
>     int num=stk1.pop();
>     if(num==stk2.top())stk2.pop();
>     return num;
>
> }
>
> On Tue, Sep 6, 2011 at 6:12 PM, Prem Krishna Chettri 
> <hprem...@gmail.com>wrote:
>
>
>
> > Guys What the Issue Here?? I think its straight forward.
>
> > If I hv two Stack
> >    First :-  Keep pushing and Popping the incoming values
> >    Second :- Keeping track of the so far min element in the First Stack.
>
> > Now maintaining second stack is bit tricky.
> >               PUSH :-  If the element is first element Push the Same
> > element in Second Stack what we Pushed in Stack 1.
> >                             Else compare the last Second.top with Current
> > Element
> >                                               Push which ever
> > is smaller (or Equal).
>
> >              POP :-  POP both the stack simultaneously.
>
> > On Tue, Sep 6, 2011 at 5:52 PM, Don <dondod...@gmail.com> wrote:
>
> >> @HARISH:
> >> Push 20 1 3 1 5 1 6 1 2 1
> >> Pop
>
> >> Now in your algorithm min will return 20, even though 1 and 3 and
> >> other smaller numbers are still in the stack.
>
> >> Don
>
> >> On Sep 6, 6:25 am, "HARISH S.C" <s.c.har...@gmail.com> wrote:
> >> > Have a separate stack for minimum. While pushing, insert the number in
> >> > minimum stack only if the given number is less that or equal to the
> >> number @
> >> > the top of min stack. While removing, remove the value from min stack
> >> only
> >> > if its equal to the value thats popped.
>
> >> --
> >> You received this message because you are subscribed to the Google Groups
> >> "Algorithm Geeks" group.
> >> To post to this group, send email to algogeeks@googlegroups.com.
> >> To unsubscribe from this group, send email to
> >> algogeeks+unsubscr...@googlegroups.com.
> >> For more options, visit this group at
> >>http://groups.google.com/group/algogeeks?hl=en.
>
> >  --
> > You received this message because you are subscribed to the Google Groups
> > "Algorithm Geeks" group.
> > To post to this group, send email to algogeeks@googlegroups.com.
> > To unsubscribe from this group, send email to
> > algogeeks+unsubscr...@googlegroups.com.
> > For more options, visit this group at
> >http://groups.google.com/group/algogeeks?hl=en.- Hide quoted text -
>
> - Show quoted text -

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to algogeeks@googlegroups.com.
To unsubscribe from this group, send email to 
algogeeks+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to