Data Structures in Hindi : Stack Update Operation

Stack Update Operation

  • Introduction to stack update operation in Hindi
  • Example of stack update operation in Hindi

Introduction to Stack Update Operation

Stack में किसी location पर store की गयी information को change करने के लिए stack update operation perform किया जाता है।

Update operation perform करने के लिए सबसे पहले आप check करते है की कँही stack empty तो नहीं है। ऐसा आप इस प्रकार करते है।

if(Top-L+1<0)
{
      //Statements to execute when stack is empty
}

ऊपर दिए गए code में L वह location है जिस location पर pointer को move किया जायेगा। यदि L location stack में होगी तो इस if block के statements execute नहीं होंगे।

इसके बाद आप Top को desired location पर move करके नयी value उसमें store करते है।

मान लीजिये आप stack में nth location पर store की गयी information को change करना चाहते है तो इसके लिए सबसे पहले Top pointer को nth location पर लाना होगा। Top को desired location पर लाने के बाद उस location पर नयी value store की जाती है। इससे पुरानी value automatically remove हो जाती है। ऐसा आप इस प्रकार करते है।

stack[Top-L+1] = Value;

ऊपर दिए गए statement में L वह location है जिसकी value आप change करना चाहते है। Value वह value है जिससे आप पुरानी value को change करना चाहते है।

इस statement में पहले Top pointer को desired location पर move किया गया है इसके बाद उसे नयी value assign की गयी है।

Example of Stack Update Operation

Stack update operation को निचे उदाहरण द्वारा समझाया जा रहा है। 

#include<stdio.h>
#include<stdlib.h>

#define MAX 5
int stack[MAX];
int Top=-1;

void main()
{
     void push(int num)
     {
          if(Top == MAX-1)
          {
               printf("Stack is full");
               return;
          }
          Top++;
          stack[Top] = num;
     }

      push(1);
      push(2);
      push(9);
      push(4);
      push(5);

      void show()
      {
          if(Top==-1)
          {
               printf("Stack is empty. No element to display");
               return;
          }
           while(Top!=-1)
           {
                 printf("%d\n",stack[Top]);
                 Top--;
           }
      }

       printf("Stack elements before updation are: \n");
       show();

       void update(int Loc, int value)
       {
             Top = MAX-1;

             if(Top-Loc+1<0)
             {
                 printf("No element to update\n");
                 return;
             }
             else
             {
                 stack[Top-Loc+1]=value;
             }
       }

       update(3,3);

       printf("Stack elements after updation are: \n");
       show();
     
}

ऊपर दिया गया उदाहरण निचे दिया गया output generate करता है।

Stack elements before updation are:
5
4
9
2
1
Stack elements after updation are:
5
4
3
2
1

      DMCA.com Protection Status

 Leave a comment