Stack in Data Structure in Hindi – स्टैक क्या है?

Hello दोस्तों! आज हम इस पोस्ट में Stack in Data Structure in Hindi (डाटा स्ट्रक्चर में स्टैक क्या है?) के बारें में पढेंगे और इसके operations तथा advantages के बारें में भी देखेंगे. इसे आप पूरा पढ़िए, यह आपको आसानी से समझ में आ जायेगा. तो चलिए शुरू करते हैं:-

Data Structure Stack in Hindi

Stack एक विशेष प्रकार का linear डेटा स्ट्रक्चर होता है जो कि LIFO (last in first out) के सिद्धान्त पर कार्य करता है अर्थात वह item जो कि सबसे अंत में add किया जाता है उसे सबसे पहले remove कर दिया जाता है तथा जो item सबसे पहले add किया जाता है उसे सबसे अंत में remove किया जाता है।

data structure stack in hindi
Data Structure Stack in Hindi

स्टैक में किसी item को डालने (add) तथा remove (हटाने) के लिए सिर्फ एक end होता है जिसे हम top end कहते है। इसमें केवल top end से ही items को add और remove किया जा सकता है. 

दूसरे शब्दों में कहें तो, “Data Structure में, Stack एक abstract data type (ADT) है और इसमें एक limited size के elements या items को ही स्टोर किया जा सकता है”

स्टैक का प्रयोग ज्यादातर सभी programming languages में किया जाता है. और इसे stack इसलिए कहा जाता है क्योंकि यह real world के stack की तरह व्यवहार करता है.  इसका real  world example – किताबों का ढेर, चूड़ियाँ पहनना और निकालना, तथा plates का ढेर आदि.

Operations of Stack in Hindi – स्टैक के ऑपरेशन

Stack में निम्नलिखित operations को perform किया जाता है:-

  1. push() – जब स्टैक में item को insert किया जाता है तो वह push ऑपरेशन कहलाता है और यदि स्टैक full होता है तो तब overflow condition होती है.

  2. pop() – जब स्टैक में से item को delete किया जाता है तो इस operation को pop operation कहते हैं. यदि स्टैक खाली होता है तो तब underflow condtion होती है.

    स्टैक को हम तब overflow कह सकते है जब वह पूरी तरह भरा हुआ होता है तथा तब underflow कह सकते है जब वह पूरी तरह खाली होता है।

  3. isEmpty() – यह ऑपरेशन बताता है कि stack खाली है या नहीं.

  4. isFull() – यह ऑपरेशन बताता है कि stack भरा हुआ है या नहीं.

  5. peek() – यह दी गयी position पर element को return करता है,

  6. count() – यह stack में मौजूद elements की कुल संख्या को return करता है.

  7. change() – यह दी गयी position पर element को बदल देता है.

  8. display() – यह स्टैक में मौजूद सभी elements (items) को print करता है.

Application of Stack in Hindi – स्टैक के अनुप्रयोग

इसका प्रयोग निम्नलिखित स्थानों पर किया जाता हैं:-

  1. स्टैक का प्रयोग expression evaluation के लिए किया जाता है.

  2. इसका प्रयोग एक expression में parenthesis matching को check करने के लिए किया जाता है.

  3. इसका प्रयोग infix expression को postfix expression या prefix expression में convert करने के लिए किया जाता है.

  4. बहुत सारीं जगहों जैसे कि – photoshop, editors आदि में undo और redo के कार्य के लिए स्टैक का प्रयोग किया जाता है.

  5. web browsers में backward और forward के feature के लिए इसका use किया जाता है.

  6. इसका प्रयोग बहुत सारीं algorithms में किया जाता है जैसे कि – tree traversals, Stock span problem, histogram problem आदि.

  7. बहुत सारें compilers स्टैक का प्रयोग expressions के syntax को parsing करने के लिए करते है.

  8. इसका प्रयोग backtracking की problem को solve करने के लिए किया जाता है. backtracking का अर्थ है वापस पीछे जाना.

  9. मैमोरी मैनेजमेंट में इसका उपयोग किया जाता है.

  10. इसको graph traversal algorithms में use किया जाता है.

  11. इसका प्रयोग CPU scheduling और disk scheduling में किया जाता है.


इसे पूरा पढने के लिए click करें:- Applications of Stack in Hindi

Features of Stack in Hindi – स्टैक की विशेषताएं

इसकी विशेषताएं निम्नलिखित हैं:-

  1. स्टैक समान data types का एक ordered list होता है.

  2. यह एक LIFO (last in first out) स्ट्रक्चर है और इसे FILO (first in last out) स्ट्रक्चर भी कहते हैं.

  3. हम इसमें elements को केवल एक ही end से add और remove कर सकते हैं और उस end को top कहा जाता है.

  4. इसे तब overflow कहते हैं जब यह पूरी तरह से full होता है और तब underflow कहते हैं जब यह पूरी तरह से empty होता है.

इसे पढ़ें:- queue क्या है?

Working of Stack in Hindi – स्टैक की कार्यविधि

जैसा कि आपको पता है कि स्टैक LIFO के सिद्धांत पर कार्य करता है. नीचे आपको चित्र दिया गया है जिसमें स्टैक के 5 memory blocks हैं. इसलिए इसका size 5 है.

माना कि यह stack खाली है और हम इसमें elements को store करना चाहते हैं. हम इसमें elements को एक एक करके तब तक push करते हैं जब तक वह full नहीं हो जाता.

stack working in Hindi

अब हम इसमें elements को delete करना चाहते है तो हम इसके top end से ही delete कर सकते हैं क्योंकि स्टैक का दूसरा end बंद है. इसमें हम सबसे पहले उस element को delete करेंगे जिसे हमने सबसे पहले insert किया था. इसलिए इसे last in first out कहा जाता है. ऊपर दिए गये चित्र में हमने सबसे पहले 1 को insert किया है इसलिए इसे सबसे अंत में delete किया जायेगा.

Stack का C Language Program

#include<stdio.h>
#include<stdlib.h>
 
#define MAX 5	 
int top=-1,stack[MAX];
void push();
void pop();
void display();
 
void main()
{
	int ch;
	
	while(1)	
	{
		printf("\n*** Stack Menu ***");
		printf("\n\n1.Push\n2.Pop\n3.Display\n4.Exit");
		printf("\n\nEnter your choice(1-4):");
		scanf("%d",&ch);
		
		switch(ch)
		{
			case 1: push();
					break;
			case 2: pop();
					break;
			case 3: display();
					break;
			case 4: exit(0);
			
			default: printf("\nWrong Choice!!");
		}
	}
}
 
void push()
{
	int val;
	
	if(top==MAX-1)
	{
		printf("\nStack is full!!");
	}
	else
	{
		printf("\nEnter element to push:");
		scanf("%d",&val);
		top=top+1;
		stack[top]=val;
	}
}
 
void pop()
{
	if(top==-1)
	{
		printf("\nStack is empty!!");
	}
	else
	{
		printf("\nDeleted element is %d",stack[top]);
		top=top-1;
	}
}
 
void display()
{
	int i;
	
	if(top==-1)
	{
		printf("\nStack is empty!!");
	}
	else
	{
		printf("\nStack is...\n");
		for(i=top;i>=0;--i)
			printf("%d\n",stack[i]);
	}
}

इसका आउटपुट

1.Push                                                                                                                       
2.Pop                                                                                                                        
3.Display                                                                                                                    
4.Exit                                                                                                                           
Enter your choice(1-4):

Advantage of Stack in Hindi – स्टैक के लाभ

इसके फायदे नीचे दिए गये हैं:-

  1. इसकी access speed बहुत तेज होती है.

  2. इसमें memory को बेहतर ढंग से manage किया जाता है इसलिए इसमें memory कभी भी fragment नहीं होती.

  3. इसके द्वारा data को LIFO method से manage किया जाता है जो कि linked list और array में संभव नहीं है.

  4. इसका use तब किया जाता है जब variable को function के बाहर नहीं प्रयोग किया जाता है.

  5. स्टैक अपने आप ही object को clean कर देता है.

Disadvantage of Stack in Hindi

इसकी हानियाँ निम्न हैं:-

  1. यह local variables को ही access कर सकता है.

  2. इसमें variables को resize नहीं किया जा सकता.

  3. इसका मुख्य नुकसान यह है कि इसमें memory की कमी होती है.

references:- https://www.javatpoint.com/data-structure-stack

निवेदन:- अगर आपका किसी computer से सम्बंधित subjects को लेकर कोई सवाल या कोई topics है तो हमें बतायें हम उसको एक या दो दिन के अंदर यहाँ हिंदी में प्रकाशित करेंगे। तथा data structure stack की इस पोस्ट को अपने दोस्तों के साथ share करें.

26 thoughts on “Stack in Data Structure in Hindi – स्टैक क्या है?”

  1. hallo sir muje
    Sequential Search, Binary Search, Insertion Sort, Selection Sort, Quick
    Sort, Bubble Sort, Heap Sort, Comparison of Sorting Methods.
    in sabhi topic ki compliat jankari hindi me chahiye plz bataiye…..

    Reply
  2. Sir,
    Pl UPPCS LT Grade vacancy ke liye computer subject ka study material Hindi Mai upload kijiye

    Reply
  3. The memory contain how much bit…… Plz give the Word and byte in register or memory with a suitable example….one cell of memory contain the how much byte or word

    Reply

Leave a Comment