2013-05-08 4 views
15

क्या कोई मुख्य अंतर को समझा सकता है? मुझे किसी भी भाषा के लिए प्रोग्रामिंग में इन कार्यों के बारे में स्पष्ट ज्ञान नहीं है।"enqueue" और "dequeue" के बीच अंतर

उत्तर

24

सी और सी ++ जैसी प्रोग्रामिंग भाषाओं में कुछ बुनियादी डेटा संरचनाएं ढेर और कतार हैं।

स्टैक डेटा संरचना "फर्स्ट इन लास्ट आउट" नीति (एफआईएलओ) का पालन करती है जहां थैला पहला तत्व डाला जाता है या स्टैक में "धक्का" होता है वह अंतिम तत्व है जिसे स्टैक से हटाया जाता है या "पॉप किया जाता है"।

इसी तरह, एक कतार डेटा संरचना "फर्स्ट इन फर्स्ट आउट" नीति का पालन करती है (जैसा कि हम सामान्य कतार के मामले में काउंटर पर खड़े होते हैं), जहां पहला तत्व कतार में धकेल दिया जाता है या " "और उसी तत्व को जब इसे कतार से हटा दिया जाना है" Dequeued "..

यह स्टैक में धक्का और पॉप के समान है, लेकिन शब्दों को एनक्यू और डेक्यू भ्रम से बचने के लिए है कि डेटा संरचना में क्या है उपयोग एक ढेर या कतार है।

कक्षा कोडर के पास एनक्यू और डेक्यू प्रक्रिया का प्रदर्शन करने के लिए एक सरल कार्यक्रम है। आप इसे संदर्भ के लिए देख सकते हैं।

http://classcoders.blogspot.in/2012/01/enque-and-deque-in-c.html

+0

बहुत बहुत धन्यवाद, अब मैं बेहतर समझ सकता हूं – Omar

+0

मैं कतार के अंत में डालने के रूप में एनक्यू की व्याख्या करता था, कतार से निकालने के लिए डेक्यू का उपयोग करता था और तत्व का उपयोग नहीं करता था, और सिर से तत्व को हटाने के लिए अनिच्छुक करता था इसका इस्तेमाल करें। क्या मेरी सोच सही है? – sergiol

+0

अपडेट: https://en.wikipedia.org/wiki/Queue_%28abstract_data_type%29 पढ़ने के बाद, मुझे लगता है कि डेक्यू सिर के तत्व को वास्तविक उपयोग करने के लिए निकालने के लिए है। – sergiol

0

एक कतार एक निश्चित 2-पक्षीय डेटा संरचना है। आप एक तरफ नए तत्व जोड़ सकते हैं, और दूसरी तरफ से तत्वों को हटा सकते हैं (जैसा कि एक स्टैक के विपरीत है जिसमें केवल एक तरफ है)। एनक्यू का मतलब तत्व को निकालने के लिए एक तत्व जोड़ने के लिए है। कृपया here देखें।

6

ये शब्द आमतौर पर "फीफो" कतार का वर्णन करते समय उपयोग किए जाते हैं, जो "पहले में, पहले बाहर" होता है। यह एक रेखा की तरह काम करता है। आप फिल्मों में जाने का फैसला करते हैं। टिकट खरीदने के लिए एक लंबी लाइन है, आप टिकट खरीदने के लिए कतार में जाने का फैसला करते हैं, जो "एनक्यू" है। किसी बिंदु पर आप लाइन के सामने हैं, और आप एक टिकट खरीदते हैं, जिस बिंदु पर आप लाइन छोड़ते हैं, जो "डेक्यू" है।

+0

आप स्टू धन्यवाद, अपने उदाहरण – Omar

16

Enqueue और Dequeue एक कतार पर संचालन होता है, एक डेटा संरचना जो वास्तव में ऐसा लगता है।

आप नवीनतम टेलर स्विफ्ट संगीत कार्यक्रम (मैं मूल रूप से बिली जोएल कहने जा रहा था लेकिन यह मुझे गंभीर रूप से डेट करने वाला था) के टिकटों के लिए कतार में रहने वाले लोगों की एक पंक्ति की तरह, एक छोर पर वस्तुओं को घेर लेता है और दूसरी तरफ डेक्यू करता है।

  +---+---+---+ 
enqueue -> | 3 | 2 | 1 | -> dequeue 
      +---+---+---+ 

आरेख एक कतार जहां है पता चलता है कि:

ऐसे डबल समाप्त हो गया लोगों को जहां enqueue और दोनों छोर लेकिन विशाल बहुमत सरल रूप में किया जाएगा विपंक्ति कर सकते हैं के रूप में कतारों की विविधताओं उस क्रम में संख्या 1, 2 और 3 को घेर लिया, बिना किसी को छोड़ दिया।

+0

चित्र एक हजार शब्दों के बोलता है स्पष्ट है। – 4imble

0

मेरी राय में से एक में सबसे खराब चुना शब्द, प्रक्रिया का वर्णन करने के रूप में यह वास्तविक जीवन या इसी तरह की किसी भी चीज़ से संबंधित नहीं है की। आम तौर पर शब्द "कतार" बहुत बुरा है जैसा कि उच्चारण किया गया है, यह अंग्रेजी चरित्र "q" जैसा लगता है। यहां अक्षमता देखें?

enqueue: कुछ कतार में रखने के लिए; एक कतार की पूंछ के लिए एक तत्व जोड़ने के लिए;

डेक्यू कतार से कुछ लेने के लिए; एक कतार

स्रोत के सिर से पहले उपलब्ध तत्व दूर करने के लिए: https://www.thefreedictionary.com

संबंधित मुद्दे