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

सूत्र-पत्रक, हर विषय के मुख्य विधि-चरण और 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. Aबड़े इनपुट पर इंसर्शन सॉर्ट किसी भी अन्य सॉर्टिंग एल्गोरिदम से कम मेमोरी उपयोग करता है
  2. Bरिकर्सिव एल्गोरिदम 10 से कम तत्वों वाले ऐरे नहीं सँभाल सकते
  3. Cइंसर्शन सॉर्ट का ओवरहेड कम है और यह छोटे या लगभग सॉर्टेड इनपुट पर तेज़ है
  4. Dइंसर्शन सॉर्ट वर्स्ट केस में O(n log n) है
2.एल्गोरिदम और जटिलताकठिन

इनमें से कौन-सी संतुष्टि समस्या बहुपदी समय में हल होने योग्य ज्ञात है?

  1. A2-SAT, जिसमें हर क्लॉज़ में अधिकतम दो लिटरल होते हैं
  2. Bकंजंक्टिव नॉर्मल फ़ॉर्म में सूत्रों पर सामान्य SAT
  3. C3-SAT, जिसमें हर क्लॉज़ में ठीक तीन लिटरल होते हैं
  4. Dसर्किट संतुष्टि
3.डेटा संरचनाएँमध्यम

V शीर्षों और E किनारों वाले ग्राफ़ के लिए एडजेसेंसी लिस्ट कितनी मेमोरी लेती है?

  1. AO(V + E)
  2. BO(E²)
  3. CO(V²)
  4. DO(V × E)
4.डेटा संरचनाएँकठिन

बाइनरी सर्च ट्री से दो चाइल्ड वाले नोड को हटाना आमतौर पर कैसे किया जाता है?

  1. Aउसके नीचे के सबट्री को शुरू से दोबारा बनाकर और उसमें मौजूद हर कुंजी को फिर से डालकर
  2. Bउसे उसके in-order उत्तराधिकारी (या पूर्ववर्ती) से बदलकर और फिर उस नोड को हटाकर
  3. Cपूरे सबट्री को हटाकर
  4. Dउसे रूट से अदला-बदली करके
5.ग्राफ़ सिद्धांतमध्यम

एक संबद्ध ग्राफ़ में 12 शीर्ष और 21 कोरें हैं। स्पैनिंग ट्री बचाने के लिए कितनी कोरें k हटानी होंगी?

|V| = 12|E| = 21
k =
6.ग्राफ़ सिद्धांतकठिन
1551110138111212ABCDEFG

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

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

3विलयन

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

उत्तर: C · इंसर्शन सॉर्ट का ओवरहेड कम है और यह छोटे या लगभग सॉर्टेड इनपुट पर तेज़ है

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

छोटे n के लिए इंसर्शन सॉर्ट का सरल लूप क्विकसॉर्ट या मर्ज सॉर्ट के रिकर्शन ओवरहेड को पीछे छोड़ देता है, भले ही वह O(n²) हो।

उत्तर

C · इंसर्शन सॉर्ट का ओवरहेड कम है और यह छोटे या लगभग सॉर्टेड इनपुट पर तेज़ है
2.एल्गोरिदम और जटिलता

उत्तर: A · 2-SAT, जिसमें हर क्लॉज़ में अधिकतम दो लिटरल होते हैं

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

2-SAT, P में है (स्ट्रॉन्गली कनेक्टेड कंपोनेंट्स से रैखिक समय), जबकि 3-SAT NP-complete है।

उत्तर

A · 2-SAT, जिसमें हर क्लॉज़ में अधिकतम दो लिटरल होते हैं
3.डेटा संरचनाएँ

उत्तर: A · O(V + E)

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

हर शीर्ष की एक लिस्ट है और हर किनारा एक बार (डायरेक्टेड) या दो बार (अनडायरेक्टेड) आता है, जिससे O(V + E) मिलता है।

उत्तर

A · O(V + E)
4.डेटा संरचनाएँ

उत्तर: B · उसे उसके in-order उत्तराधिकारी (या पूर्ववर्ती) से बदलकर और फिर उस नोड को हटाकर

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

in-order उत्तराधिकारी के अधिकतम एक चाइल्ड होता है, इसलिए उसकी कुंजी को हटाए जाने वाले नोड में कॉपी करने के बाद उसे आसानी से हटाया जा सकता है।

उत्तर

B · उसे उसके in-order उत्तराधिकारी (या पूर्ववर्ती) से बदलकर और फिर उस नोड को हटाकर
5.ग्राफ़ सिद्धांत

उत्तर: k = 10

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

स्पैनिंग ट्री की कोरें

12 − 1 = 11

हटाई जाने वाली कोरें

k = 21 − 11 = 10

उत्तर

k = 10
6.ग्राफ़ सिद्धांत

उत्तर: d(D) = 26

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

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

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

A (0): B: 15, C: 5
C (5): E: 15, G: 17
B (15): D: 26
E (15): F: 23
G (17)
F (23)
D (26)

सबसे छोटा पथ

A → B → D
d(D) = 26

उत्तर

d(D) = 26

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