डेटा संरचना और एल्गोरिदम: क्रैम पैक

सूत्र-पत्रक, हर विषय के मुख्य विधि-चरण और 6 अभ्यास प्रश्न, पूरे हल पीछे दिए गए हैं।

नए प्रश्नकोर्स पर वापस जाएँ

प्रिंट विंडो में “PDF के रूप में सहेजें” चुनें, ताकि एक प्रति आपके डिवाइस पर रहे।

1सूत्र और विधियाँ

ग्राफ़ सिद्धांत

हैंडशेक लेमा
Σ deg(v) = 2|E|
पूर्ण ग्राफ़
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
नियमित ग्राफ़
|E| = n·k/2
वृक्ष और वन
|E| = n − 1, |E| = n − c
वृक्ष के पत्ते
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
यूलर
परिपथ: सभी घात सम; पथ: ठीक 2 घात विषम
Kn में हैमिल्टन परिपथ
(n − 1)!/2
डाइक्स्ट्रा अद्यतन
d(v) = min(d(v), d(u) + w(u, v))
लंबाई L की वॉक
(Mᴸ)ij

विधि

  1. हर शीर्ष की घात लिखें; घातों का योग कोरों की संख्या का दोगुना होता है।
  2. यूलर के प्रश्नों में जाँचें कि ग्राफ़ संबद्ध है और विषम घात वाले शीर्षों को गिनें।
  3. वृक्षों के लिए n − 1 कोरों और हैंडशेक लेमा का उपयोग करें।
  4. डाइक्स्ट्रा के लिए अस्थायी दूरियों की सारणी रखें और हर चक्र में सबसे छोटी दूरी वाले अनिर्धारित शीर्ष को निर्धारित करें।
  5. न्यूनतम स्पैनिंग ट्री के लिए कोरों को भार के अनुसार क्रमबद्ध करें और चक्र बनाने वाली हर कोर छोड़ दें (क्रुस्कल), या किसी प्रारंभिक शीर्ष से एक वृक्ष बढ़ाएँ (प्रिम)।

2अभ्यास प्रश्न

1.एल्गोरिदम और जटिलतामध्यम

एक सॉर्टेड ऐरे में आप दोनों सिरों से एक-एक पॉइंटर को भीतर की ओर खिसकाते हुए ऐसे दो तत्व खोजते हैं जिनका योग लक्ष्य के बराबर हो। टाइम कॉम्प्लेक्सिटी क्या है?

  1. AO(n log n)
  2. BO(log n)
  3. CO(n)
  4. DO(n²)
2.एल्गोरिदम और जटिलताकठिन

यदि कोई किसी एक NP-complete समस्या के लिए बहुपदी-समय एल्गोरिदम खोज ले, तो क्या निष्कर्ष निकलेगा?

  1. Aसभी घातांकी-समय एल्गोरिदम तुरंत रैखिक समय में चलने लगेंगे
  2. Bहॉल्टिंग समस्या निर्णेय हो जाएगी
  3. Cकेवल वही एक समस्या P में चली जाएगी
  4. DNP की हर समस्या बहुपदी समय में हल हो सकेगी, इसलिए P = NP
3.डेटा संरचनाएँमध्यम

बाइनरी हीप में नया तत्व कैसे डाला जाता है?

  1. Aसभी बड़े तत्वों को एक स्थान दाएँ खिसकाकर उसे उसकी सॉर्टेड स्थिति में डालें
  2. Bपूरे हीप को फिर से शुरू से बनाएँ
  3. Cउसे रूट पर रखें और नीचे sift करें
  4. Dउसे ऐरे के अंत में रखें और जब तक वह हीप गुण का उल्लंघन करे, ऊपर sift करें
4.डेटा संरचनाएँकठिन

एक डायनेमिक ऐरे भर जाने पर दोगुना होता है। कई कार्यान्वयन उसे आधा भरा होने के बजाय केवल एक-चौथाई भरा होने पर ही क्यों छोटा करते हैं?

  1. Aऐरे को सॉर्टेड रखने के लिए
  2. Bसीमा के पास push और pop बारी-बारी से होने पर बार-बार आकार बदलने से बचने के लिए
  3. Cक्योंकि मेमोरी आवंटक मेमोरी को केवल ब्लॉक के चौथाई भागों में मुक्त कर सकता है
  4. Dक्योंकि आधे पर आधा करने से तत्व खो जाएँगे
5.ग्राफ़ सिद्धांतमध्यम
ABCDEयूलर परिपथयूलर पथ, परिपथ नहींदोनों में से कुछ नहीं

क्या संबद्ध ग्राफ़ में यूलर परिपथ है, परिपथ न होने वाला यूलर पथ है, या दोनों में से कुछ नहीं? अपना उत्तर क्लिक करें।

|V| = 5|E| = 6
  1. 1यूलर परिपथ
  2. 2यूलर पथ, परिपथ नहीं
  3. 3दोनों में से कुछ नहीं
6.ग्राफ़ सिद्धांतकठिन
8121283143119ABCDEFG

भारित ग्राफ़ में A से F तक के सबसे छोटे पथ की लंबाई d(F) डाइक्स्ट्रा के एल्गोरिथ्म से ज्ञात करें।

प्रारंभ: Aअंत: F
d(F) =

3विलयन

1.एल्गोरिदम और जटिलता

उत्तर: C · O(n)

यह उत्तर क्यों है

यदि योग बहुत छोटा हो तो बायाँ पॉइंटर दाएँ खिसकता है, बहुत बड़ा हो तो दायाँ पॉइंटर बाएँ, इसलिए अधिकतम n चरण होते हैं।

उत्तर

C · O(n)
2.एल्गोरिदम और जटिलता

उत्तर: D · NP की हर समस्या बहुपदी समय में हल हो सकेगी, इसलिए P = NP

यह उत्तर क्यों है

चूँकि पूरा NP किसी भी NP-complete समस्या में बहुपदी समय में रिड्यूस होता है, एक के लिए तेज़ एल्गोरिदम सबके लिए तेज़ एल्गोरिदम देता है।

उत्तर

D · NP की हर समस्या बहुपदी समय में हल हो सकेगी, इसलिए P = NP
3.डेटा संरचनाएँ

उत्तर: D · उसे ऐरे के अंत में रखें और जब तक वह हीप गुण का उल्लंघन करे, ऊपर sift करें

यह उत्तर क्यों है

अंत में जोड़ने से ट्री पूर्ण रहता है; पैरेंट से स्वैप करना O(log n) चरणों में क्रम बहाल करता है।

उत्तर

D · उसे ऐरे के अंत में रखें और जब तक वह हीप गुण का उल्लंघन करे, ऊपर sift करें
4.डेटा संरचनाएँ

उत्तर: B · सीमा के पास push और pop बारी-बारी से होने पर बार-बार आकार बदलने से बचने के लिए

यह उत्तर क्यों है

आधे पर छोटा करने से ऐसे अनुक्रम में हर ऑपरेशन पर आकार बदल सकता है; 1/4 और पूर्ण के बीच का अंतर एमॉर्टाइज़्ड लागत को O(1) रखता है।

उत्तर

B · सीमा के पास push और pop बारी-बारी से होने पर बार-बार आकार बदलने से बचने के लिए
5.ग्राफ़ सिद्धांत

उत्तर: दोनों में से कुछ नहीं

यूलर, हैमिल्टन और वृक्ष: संबद्ध ग्राफ़ में यूलर परिपथ (हर कोर एक बार, शुरुआत पर वापसी) तब होता है जब हर शीर्ष की घात सम हो, और परिपथ न होने वाला यूलर पथ तब जब ठीक दो शीर्षों की घात विषम हो; तब पथ एक विषम शीर्ष से दूसरे तक चलता है। हैमिल्टन परिपथ हर शीर्ष पर एक बार जाता है; Kn में ऐसे (n − 1)!/2 होते हैं। n शीर्षों वाले वृक्ष में n − 1 कोरें होती हैं, और m कोरों वाला संबद्ध ग्राफ़ m − n + 1 कोरें हटाने के बाद स्पैनिंग ट्री रखता है।

घात

deg(A) = 1, deg(B) = 3, deg(C) = 3, deg(D) = 2, deg(E) = 3

विषम शीर्ष

A, B, C, E → 4
दोनों में से कुछ नहीं

उत्तर

दोनों में से कुछ नहीं
6.ग्राफ़ सिद्धांत

उत्तर: d(F) = 25

सबसे छोटे पथ और स्पैनिंग ट्री: डाइक्स्ट्रा का एल्गोरिथ्म हर चक्र में एक शीर्ष निर्धारित करता है: सबसे छोटी अस्थायी दूरी वाला अनिर्धारित शीर्ष। तब उसकी दूरी अंतिम होती है, और हर पड़ोसी v को d(v) = min(d(v), d(u) + w(u, v)) मिलता है। क्रुस्कल का एल्गोरिथ्म कोरों को हल्की से भारी की ओर लेकर और चक्र बनाने वाली हर कोर छोड़कर न्यूनतम स्पैनिंग ट्री बनाता है; प्रिम का एल्गोरिथ्म प्रारंभिक शीर्ष से एक वृक्ष बढ़ाता है और हमेशा उससे बाहर जाने वाली सबसे हल्की कोर जोड़ता है। n शीर्षों के स्पैनिंग ट्री में n − 1 कोरें होती हैं।

डाइक्स्ट्रा चक्र-दर-चक्र

हर पंक्ति: निर्धारित शीर्ष, उसकी अंतिम दूरी, और वे पड़ोसी जिनकी दूरी सुधरती है।

A (0): C: 8
C (8): B: 20, G: 11
G (11): D: 22, E: 20
B (20)
E (20)
D (22): F: 25
F (25)

सबसे छोटा पथ

A → C → G → D → F
d(F) = 25

उत्तर

d(F) = 25

ExamProblems · examproblems.com/courses/data-structures-and-algorithms