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

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

भर जाने पर अपनी क्षमता दोगुनी करने वाले डायनेमिक ऐरे में तत्व जोड़ने (append) की एमॉर्टाइज़्ड (amortised) टाइम कॉम्प्लेक्सिटी क्या है?

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

बड़े n के लिए n! और 2ⁿ की तुलना कैसी है?

  1. A2ⁿ, n! से तेज़ बढ़ता है
  2. Bदोनों एक ही दर से बढ़ते हैं
  3. Cn!, O(n²) है
  4. Dn!, 2ⁿ से तेज़ बढ़ता है
3.डेटा संरचनाएँमध्यम

इंडेक्स 0 से शुरू होने वाले ऐरे में संग्रहीत बाइनरी हीप में इंडेक्स i वाले नोड का पैरेंट कहाँ है?

  1. Aइंडेक्स 2i + 1 पर
  2. Bइंडेक्स ⌊i / 2⌋ + 1 पर
  3. Cइंडेक्स i − 1 पर
  4. Dइंडेक्स ⌊(i − 1) / 2⌋ पर
4.डेटा संरचनाएँकठिन

स्प्ले ट्री हर पहुँच के बाद क्या करता है?

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

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

|V| = 19|E| = 20
k =
6.ग्राफ़ सिद्धांतकठिन
12314614656ABCDEF

डाइक्स्ट्रा का एल्गोरिथ्म A से चलता है। उस शीर्ष पर क्लिक करें जो चक्र 4 में निर्धारित (स्थायी) होता है; A स्वयं चक्र 1 है।

प्रारंभ: Aचक्र 4
  1. 1A
  2. 2B
  3. 3C
  4. 4D
  5. 5E
  6. 6F

3विलयन

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

उत्तर: D · O(1)

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

सभी तत्वों की कॉपी केवल दो की घातों पर होती है; सभी appends पर फैलाने से प्रति append औसत लागत स्थिर रहती है।

उत्तर

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

उत्तर: D · n!, 2ⁿ से तेज़ बढ़ता है

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

n ≥ 4 के लिए n!, 2ⁿ से अधिक है, और अनुपात असीमित रूप से बढ़ता है क्योंकि n! का हर अतिरिक्त गुणक 2 से बड़ा है।

उत्तर

D · n!, 2ⁿ से तेज़ बढ़ता है
3.डेटा संरचनाएँ

उत्तर: D · इंडेक्स ⌊(i − 1) / 2⌋ पर

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

i के चाइल्ड 2i + 1 और 2i + 2 पर हैं, इसलिए i का पैरेंट ⌊(i − 1) / 2⌋ है; 1-आधारित इंडेक्सिंग में यह ⌊i / 2⌋ है।

उत्तर

D · इंडेक्स ⌊(i − 1) / 2⌋ पर
4.डेटा संरचनाएँ

उत्तर: B · पहुँचे गए नोड को रोटेशन से रूट तक ले जाता है

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

स्प्लेइंग रोटेशनों से पहुँचे गए नोड को रूट पर ले जाती है; एक ऑपरेशन में O(n) लग सकता है, पर एमॉर्टाइज़्ड लागत O(log n) है।

उत्तर

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

उत्तर: k = 2

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

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

19 − 1 = 18

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

k = 20 − 18 = 2

उत्तर

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

उत्तर: E

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

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

1. A (0): B: 12
2. B (12): C: 15, D: 26, E: 18
3. C (15)
4. E (18): F: 23
5. F (23)
6. D (26)

चक्र 4

E

उत्तर

E

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