First time here? Checkout the FAQ!
+2 votes

Loading Question

asked in DS by Veteran (10.2k points)   | 120 views

1 Answer

+3 votes

Overflow condition for stack suggests that stack is full.

As mentioned in the questions , the stacks are arranged from left to right in a contiguous manner i.e. after stack S0 , say ends ,stack S1 begins.

So the ith stack is full if top of ith stack points to the last element of that stack and just after that the next stack contents begin i.e. we reach base address of next stack.

So if we have ith stack the condition for it to be full is that top[i] is just before base[i+1] i.e just before base address of (i+1)th stack 

Hence , the required condition is : Top[i] = Base[i+1] - 1

Hence , C) should be the correct option.

If asked for underflow , i.e. stack is empty , in that case , Top[i] = Base[i] - 1

answered by Veteran (65.9k points)  
I agree with you. But will there be another overflow condition where Top[i]=Base[i-1]-1???
Base[i-1] is the base address of preceding array .So Base[i-1] - 1 will lead us to (i-2)th stack which is not the case of overflow as the stack is growing from left to right
Question says address can also be given as X-n/m. Which means array can be represented S(m),S(m-1)......(S1). in that case there will be other overflow condition.
But I have explained you the meaning of overflow .Also it is mentioned that stack grows from left to right.So overflow will occur in right only not left.
sir, S(m) will be growing from left to right, and same for all arrays. i am just providing starting address of array to array-m. So i think my second overflow condition is correct and your answer is also correct.

Top Users Apr 2017
  1. akash.dinkar12

    3514 Points

  2. Divya Bharti

    2546 Points

  3. Deepthi_ts

    2040 Points

  4. rude

    1966 Points

  5. Tesla!

    1768 Points

  6. Shubham Sharma 2

    1610 Points

  7. Debashish Deka

    1588 Points

  8. Arunav Khare

    1454 Points

  9. Kapil

    1424 Points

  10. Arjun

    1420 Points

Monthly Topper: Rs. 500 gift card

22,076 questions
28,042 answers
24,135 users