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

सूत्र-पत्रक, हर विषय के मुख्य विधि-चरण और 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.एल्गोरिदम और जटिलतामध्यम

एक ग्रीडी एल्गोरिदम (greedy algorithm):

  1. Aहमेशा इष्टतम समाधान देता है
  2. Bकेवल रिकर्शन का उपयोग करता है
  3. Cहर संभव समाधान आज़माता है
  4. Dहर चरण में स्थानीय रूप से सर्वोत्तम विकल्प चुनता है
2.एल्गोरिदम और जटिलताकठिन

करात्सुबा गुणन T(n) = 3T(n/2) + O(n) को संतुष्ट करता है। इसका हल क्या है?

  1. AΘ(n3)
  2. BΘ(n²)
  3. CΘ(n log n)
  4. DΘ(nlog₂ 3), लगभग n1.585
3.डेटा संरचनाएँमध्यम

अनडायरेक्टेड ग्राफ़ के एडजेसेंसी मैट्रिक्स के बारे में क्या सत्य है?

  1. Aयह हमेशा ऊपरी त्रिकोणीय होता है
  2. Bहर पंक्ति में ठीक एक 1 होता है
  3. Cइसके मुख्य विकर्ण में हमेशा 1 होते हैं
  4. Dयह मुख्य विकर्ण के सापेक्ष सममित है
4.डेटा संरचनाएँकठिन

क्रुस्कल के मिनिमम स्पैनिंग ट्री एल्गोरिदम में union-find संरचना का उपयोग किसलिए होता है?

  1. Aयह जाँचने के लिए कि किसी किनारे के दोनों सिरे पहले से जुड़े हैं या नहीं
  2. Bकिनारों को भार के अनुसार सॉर्ट करने के लिए
  3. Cप्रारंभिक शीर्ष चुनने के लिए
  4. Dखोज के दौरान हर शीर्ष की स्रोत से वर्तमान दूरी संग्रहीत करने के लिए
5.ग्राफ़ सिद्धांतमध्यम

पूर्ण ग्राफ़ K7 में कितने भिन्न हैमिल्टन परिपथ H हैं? जो परिपथ केवल प्रारंभिक शीर्ष या दिशा में भिन्न हों, उन्हें एक ही गिना जाता है।

K7
H =
6.ग्राफ़ सिद्धांतकठिन
11062310188ABCDEFG

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

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

3विलयन

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

उत्तर: D · हर चरण में स्थानीय रूप से सर्वोत्तम विकल्प चुनता है

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

ग्रीडी एल्गोरिदम तेज़ होते हैं और कुछ समस्याओं (जैसे Dijkstra, Huffman कोडिंग) के लिए इष्टतम होते हैं, लेकिन सामान्य रूप से नहीं (जैसे कुछ सिक्का प्रणालियों में coin change)।

उत्तर

D · हर चरण में स्थानीय रूप से सर्वोत्तम विकल्प चुनता है
2.एल्गोरिदम और जटिलता

उत्तर: D · Θ(nlog₂ 3), लगभग n1.585

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

चूँकि log₂ 3 ≈ 1.585 > 1, मास्टर प्रमेय से पत्तियाँ (leaves) प्रभावी होती हैं, जो O(n²) पारंपरिक विधि से बेहतर है।

उत्तर

D · Θ(nlog₂ 3), लगभग n1.585
3.डेटा संरचनाएँ

उत्तर: D · यह मुख्य विकर्ण के सापेक्ष सममित है

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

अनडायरेक्टेड ग्राफ़ में किनारा {u, v} का अर्थ है कि M[u][v] और M[v][u] दोनों सेट हैं, इसलिए मैट्रिक्स अपने ट्रांसपोज़ के बराबर है।

उत्तर

D · यह मुख्य विकर्ण के सापेक्ष सममित है
4.डेटा संरचनाएँ

उत्तर: A · यह जाँचने के लिए कि किसी किनारे के दोनों सिरे पहले से जुड़े हैं या नहीं

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

Find बताता है कि दोनों सिरे एक ही घटक में हैं या नहीं; यदि नहीं, तो किनारा जोड़ा जाता है और union घटकों को मिला देता है।

उत्तर

A · यह जाँचने के लिए कि किसी किनारे के दोनों सिरे पहले से जुड़े हैं या नहीं
5.ग्राफ़ सिद्धांत

उत्तर: H = 360

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

गिनें

H = (7 − 1)!/2 = 720/2 = 360

उत्तर

H = 360
6.ग्राफ़ सिद्धांत

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

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

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

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

A (0): B: 1, C: 10
B (1): C: 7, D: 3, G: 2
G (2)
D (3): E: 6, F: 13
E (6)
C (7)
F (13)

सबसे छोटा पथ

A → B → D → F
d(F) = 13

उत्तर

d(F) = 13

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