2009-10-08 39 views
79

डेटा संरचनाओं के बारे में बहुत सी बात है, लेकिन मुझे डेटा संरचनाओं और उनके व्यावहारिक उपयोग की एक साधारण सूची नहीं मिल रही है। मैं एक साक्षात्कार के लिए अध्ययन करने की कोशिश कर रहा हूं और मुझे लगता है कि इससे मुझे कई अन्य लोगों के साथ मदद मिलेगी। मैं कुछ इस तरह की तलाश में हूँ: - उदाहरण/विभिन्न डेटा संरचनाओं के व्यावहारिक उपयोग

हैश तालिका के लिए प्रयुक्त -

डेटा संरचना तेजी से डेटा देखने ... तो एक उदाहरण

सरणी देना - ...

बाइनरी पेड़ - ...

यदि कहीं ऐसा संसाधन है, तो कृपया मुझे बताएं।

धन्यवाद!

संपादित करें: मेरा मतलब है विकिपीडिया अच्छा है और सभी, लेकिन अधिकांश पृष्ठों पर वे वास्तव में व्यावहारिक उपयोगों की सूची नहीं देते हैं। मैं उससे ज्यादा कुछ ढूंढ रहा हूं।

+0

आप इस का उत्तर चिह्नित करने के लिए करना चाहते हैं सवाल? उपयोगकर्ताओं को सबसे लोकप्रिय उत्तर अधिक तेज़ी से ढूंढने में मदद कर सकता है। – MXMLLN

उत्तर

-1

मुझे लगता है कि डेटा संरचनाओं की विशेषताओं का अध्ययन करने के लिए यह अधिक समझदार है।

परिदृश्य के आधार पर आपका साक्षात्कारकर्ता आपको देता है, उचित चुनें।

मैं उन लोगों के लिए झूठ बोलता हूं जो सॉफ़्टवेयर इंजीनियरिंग और प्रोग्रामिंग का दावा नहीं करते हैं।

1

विभिन्न डेटा संरचनाओं की कोई भी रैंकिंग कम से कम आंशिक रूप से समस्या संदर्भ से जुड़ी होगी। यह एल्गोरिदम के समय और अंतरिक्ष प्रदर्शन का विश्लेषण करने के तरीके सीखने में मदद करेगा। आमतौर पर, "बड़ा ओ नोटेशन" का उपयोग किया जाता है, उदा। बाइनरी खोज ओ (लॉग एन) समय में है, जिसका अर्थ है कि तत्व की खोज करने का समय तत्वों की संख्या के लॉग (आधार 2 में, अंतर्निहित रूप से) है। सहजता से, चूंकि प्रत्येक चरण शेष डेटा का आधा अप्रासंगिक के रूप में त्याग देता है, इसलिए तत्वों की संख्या को दोगुना करने से समय 1 कदम तक बढ़ जाएगा। (बाइनरी खोज स्केल बल्कि अच्छी तरह से।) अंतरिक्ष प्रदर्शन चिंता करता है कि बड़े डेटा सेट के लिए स्मृति की मात्रा कैसे बढ़ती है। साथ ही, ध्यान दें कि बड़े-ओ नोटेशन निरंतर कारकों को अनदेखा करते हैं - छोटे डेटा सेट के लिए, ओ (एन^2) एल्गोरिदम अभी भी एक ओ (एन * लॉग एन) एल्गोरिदम से तेज हो सकता है जिसमें उच्च स्थिर कारक होता है। जटिल एल्गोरिदम अक्सर स्टार्टअप पर करने के लिए और अधिक काम करते हैं।

समय और स्थान के अलावा, अन्य विशेषताओं में शामिल हैं कि डेटा संरचना को हल किया गया है (पेड़ और स्कीप्लिस्ट सॉर्ट किए गए हैं, हैश टेबल नहीं हैं), दृढ़ता (बाइनरी पेड़ पुराने संस्करणों से पॉइंटर्स का पुन: उपयोग कर सकते हैं, जबकि हैश टेबल को जगह में संशोधित किया जाता है) , आदि

जबकि आपको उनकी तुलना करने में सक्षम होने के लिए कई डेटा संरचनाओं के व्यवहार को सीखने की आवश्यकता होगी, लेकिन एक तरीका विकसित करने के लिए एक तरीका विकसित करने के लिए कि वे प्रदर्शन में भिन्न क्यों हैं, कुछ बारीकी से अध्ययन करना है। मैं सिंगल-लिंक्ड सूचियों, बाइनरी सर्च पेड़, और skip lists की तुलना करने का सुझाव दूंगा, जिनमें से सभी अपेक्षाकृत सरल हैं, लेकिन बहुत अलग विशेषताएं हैं। इस बारे में सोचें कि मूल्य खोजने के लिए कितना काम लगता है, एक नया मान जोड़ें, क्रम में सभी मूल्यों को ढूंढें, आदि

लोग एल्गोरिदम/डेटा संरचना प्रदर्शन का विश्लेषण करने पर विभिन्न ग्रंथ हैं जो लोग अनुशंसा करते हैं, लेकिन वास्तव में उन्हें क्या बनाया गया मुझे समझ में ओकैमल सीख रहा था। जटिल डेटा संरचनाओं से निपटना एमएल का मजबूत सूट है, और उनका व्यवहार बहुत स्पष्ट है जब आप सी में पॉइंटर्स और मेमोरी मैनेजमेंट से बच सकते हैं। (डेटा संरचनाओं को समझने के लिए ओकैमल सीखना लगभग निश्चित रूप से लगभग लंबा रास्ता है। :))

6

मेरी समझ डेटा संरचना के अनुसार किसी भी इलेक्ट्रॉनिक सिस्टम की स्मृति में रहने वाले किसी भी डेटा को कुशलता से प्रबंधित किया जा सकता है।कई बार यह स्मृति का एक गेम या डेटा की तेज़ी से पहुंच योग्यता है। फिर से स्मृति के मामले में, उस अंतिम उत्पाद की कंपनी के लिए लागत के आधार पर डेटा के प्रबंधन के साथ ट्रेडऑफ किए जाते हैं। कुशलतापूर्वक प्रबंधित हमें बताता है कि अंतिम उत्पाद की प्राथमिक आवश्यकता के आधार पर डेटा को कितना सर्वोत्तम उपयोग किया जा सकता है। यह एक बहुत ही उच्च स्तर की व्याख्या है लेकिन डेटा संरचनाएं एक विशाल विषय हैं। अधिकांश साक्षात्कारकर्ता डेटा संरचनाओं में गोता लगाते हैं कि वे साक्षात्कार में उनके समय के आधार पर चर्चा कर सकते हैं, जो सूचियों और संबंधित विषयों से जुड़े हुए हैं।

अब, इन डेटा प्रकारों को तार्किक रूप से निर्मित और एक्सेस किए जाने के तरीके के आधार पर आदिम, अमूर्त, समग्र में विभाजित किया जा सकता है।

  • आदिम डेटा संरचनाओं सभी डेटा संरचनाओं के बुनियादी निर्माण घटक हैं, वे उनके लिए एक सतत स्मृति: बुलियन, चार, int, नाव, डबल, स्ट्रिंग।
  • समग्र डेटा संरचनाएं डेटा संरचनाएं हैं जो एक से अधिक आदिम डेटा प्रकारों से बना हैं। क्लास, संरचना, संघ, सरणी/रिकॉर्ड।
  • अमूर्त डेटाटाइप समग्र डेटाैटिप्स हैं जिनके पास कुशलतापूर्वक उन तक पहुंचने का तरीका है जिन्हें एल्गोरिदम कहा जाता है। डेटा तक पहुंचने के तरीके के आधार पर डेटा संरचनाओं को रैखिक और गैर रैखिक डेटाटाइप में बांटा गया है। लिंक्ड सूचियां, ढेर, कतार, आदि रैखिक डेटा प्रकार हैं। ढेर, बाइनरी पेड़ और हैश टेबल आदि गैर रैखिक डेटा प्रकार हैं।

मुझे आशा है कि यह आप और गहराई तक मदद करता है।

4

उत्कृष्ट पुस्तक "Algorithm Design Manual" Skienna द्वारा एल्गोरिदम और डेटा संरचना का एक विशाल भंडार हैं।

समस्याओं के टन के लिए, डाटा संरचनाओं और कलन विधि वर्णित हैं , व्यावहारिक उपयोग की तुलना में, और चर्चा करता है। लेखक कार्यान्वयन और मूल शोध पत्रों के संदर्भ भी प्रदान करता है।

यदि आप अपनी समस्या के समाधान के लिए सर्वोत्तम डेटा संरचना खोजते हैं तो यह पुस्तक आपके डेस्क पर है। है साक्षात्कार तैयारी के लिए भी बहुत उपयोगी है।

एक और महान संसाधन NIST Dictionary of Data structures and algorithms है।

72

एक समान प्रश्न में सूची मिला, StackOverflow पर पहले से:

हैश तालिका - प्रतीक तालिका compilers के लिए, डेटाबेस अनुक्रमण, कैश, अद्वितीय डेटा प्रतिनिधित्व - तेजी से डेटा देखने के लिए इस्तेमाल किया।

ट्री - शब्दकोश, जैसे स्वत: पूर्णता और वर्तनी-जांच के लिए मोबाइल टेलीफोन पर पाया गया।

प्रत्यय पेड़ - अधिकांश शब्द प्रोसेसर में तेज़ पूर्ण पाठ खोजों का उपयोग किया जाता है।

स्टैक - वर्ड प्रोसेसर में पूर्ववत \ redo ऑपरेशन, अभिव्यक्ति मूल्यांकन और सिंटैक्स पार्सिंग, जेवीएम जैसी कई वर्चुअल मशीनें स्टैक उन्मुख हैं।

कतार - परिवहन और संचालन अनुसंधान जहां विभिन्न संस्थाएं संग्रहीत और बाद में संसाधित की जाती हैं यानी कतार बफर के कार्य को निष्पादित करती है।

प्राथमिकता कतारों - कर्नेल में प्रक्रिया अनुसूचन

पेड़ - Parsers, फ़ाइल

मूलांक पेड़ - आईपी अनुमार्गण तालिका

बसपा पेड़ - 3 डी कंप्यूटर ग्राफिक्स

ग्राफ़ - कनेक्शन/संबंध सोशल नेटवर्किंग साइट्स में, रूटिंग , संचार नेटवर्क, डेटा संगठन इत्यादि

ढेर - में गतिशील स्मृति आवंटन तुतलाना

इस उत्तर मूल रूप से RV Pradeep

कुछ अन्य, कम उपयोगी लिंक द्वारा पोस्ट की गई है:

Applications are only listed for some data structures

Not application focused, by good summary and relevant

+1

आपका पहला लिंक टूटा हुआ है –

+0

धन्यवाद, @DanBeaulieu। मैंने मृत लिंक हटा दिया। – MXMLLN

+1

बहुत अच्छा सारांश। शायद उपयोग की सूची कभी खत्म नहीं होती है, लेकिन एक बिंदु प्राप्त करता है। –

10

मैं में हूँ वही नाव जैसा आप करते हैं। मुझे तकनीकी साक्षात्कार के लिए अध्ययन करने की ज़रूरत है, लेकिन एक सूची याद रखना वास्तव में सहायक नहीं है। आप 3-4 घंटे के अतिरिक्त, और एक गहरी डुबकी क्या करना चाहते है, तो मैं

mycodeschool
मैं Coursera और ऐसे ब्लॉग्स और पाठ्यपुस्तकों के रूप में अन्य संसाधनों, पर देखा है देखने की अनुशंसा करते लेकिन मैं उन्हें या तो लगता है पर्याप्त व्यापक या स्पेक्ट्रम के दूसरे छोर पर, पूर्व कंप्यूटर विज्ञान शब्दावली के साथ बहुत घना नहीं है।

वीडियो में दोस्त डेटा संरचनाओं पर व्याख्यान का एक गुच्छा है। मूर्खतापूर्ण चित्रों, या मामूली उच्चारण पर ध्यान न दें।आप न सिर्फ जो डेटा संरचना का चयन करने के समझने की जरूरत है, लेकिन कुछ अन्य बिंदुओं पर विचार करने के लिए जब लोग डेटा संरचनाओं के बारे में सोचना:

  • पेशेवरों और आम डेटा संरचनाओं की विपक्ष
  • क्यों प्रत्येक डेटा संरचना मौजूद
  • कैसे यह वास्तव में स्मृति में काम
  • विशिष्ट प्रश्न/व्यायाम और जो संरचना अधिकतम क्षमता
  • स्पष्ट अर्थ बिग 0 विवरण के लिए उपयोग करने के लिए निर्णय लेने से

I also posted notes on github if you are interested.

0

डेटा संरचनाओं

लाल काले पेड़ों से कुछ अधिक व्यावहारिक आवेदन (प्रयुक्त जब वहाँ लगातार प्रविष्टि/हटाने की और कुछ खोजों है) - कश्मीर मतलब क्लस्टरिंग लाल, काले पेड़ का उपयोग कर, डेटाबेस, सरल दिमाग डेटाबेस, शब्दकोशों के अंदर शब्द खोज, वेब पर खोज

AVL पेड़ (अधिक खोज और निवेशन के कम/विलोपन) - डेटा विश्लेषण और डाटा माइनिंग और अनुप्रयोगों जो अधिक खोजों

शामिल

मिन वह एपी - क्लस्टरिंग एल्गोरिदम

0

मुझे आशा है कि यह वेबसाइट डेटा संरचनाओं और एल्गोरिदम के व्यावहारिक उपयोग को जानने के लिए एक शानदार जगह होगी।

Algorithum problem with solution

0

नीचे दिए गए साइटों जहाँ आप डेटा संरचना और एल्गोरिथ्म के वास्तविक उपयोग को समझ सकता हूँ की सूची इस प्रकार Hacker Earth

Hacker Rank

code chef

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