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

सूत्र-पत्रक, हर विषय के मुख्य विधि-चरण और 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हर स्थिति में Bellman–Ford आवश्यक है
  2. Bडेप्थ-फ़र्स्ट सर्च (DFS)
  3. CDijkstra का एल्गोरिदम
  4. DKruskal का एल्गोरिदम
2.एल्गोरिदम और जटिलताकठिन

डायनेमिक प्रोग्रामिंग से हल की गई 0/1 नैपसैक (knapsack) समस्या में O(nW) समय लगता है। इसे स्यूडो-पॉलिनोमियल (pseudo-polynomial) क्यों कहा जाता है?

  1. Aक्योंकि एल्गोरिदम यादृच्छिक (randomised) है और उसका रनिंग टाइम हर इनपुट के साथ बदलता है
  2. Bक्योंकि n हमेशा छोटा होता है
  3. CW एक संख्या है, इसलिए समय W को लिखने में प्रयुक्त बिट्स की संख्या में घातांकी है
  4. Dक्योंकि यह केवल W = 0 के लिए काम करता है
3.डेटा संरचनाएँमध्यम

कुंजियाँ 50, 30, 70, 20, 40 इसी क्रम में एक ख़ाली बाइनरी सर्च ट्री में डाली जाती हैं। 30 का बायाँ चाइल्ड क्या है?

  1. A50
  2. B70
  3. C40
  4. D20
4.डेटा संरचनाएँकठिन

मानक ब्लूम फ़िल्टर से तत्वों को उनके बिट साफ़ करके सीधे क्यों नहीं हटाया जा सकता?

  1. Aहटाने से फ़ॉल्स पॉज़िटिव दर 100% हो जाएगी
  2. Bब्लूम फ़िल्टर के बिट बनने के बाद बदले नहीं जा सकते
  3. Cब्लूम फ़िल्टर पूरे तत्व संग्रहीत करते हैं, और हैश हो जाने के बाद उन्हें दोबारा खोजा नहीं जा सकता
  4. Dवे बिट अन्य तत्वों के भी हो सकते हैं, जिससे फ़ॉल्स नेगेटिव होंगे
5.ग्राफ़ सिद्धांतमध्यम

एक वृक्ष में घात 5 वाले 2 शीर्ष, घात 2 वाले 4 शीर्ष है, और उसके बाकी सभी शीर्ष पत्ते (घात 1) हैं। उसमें कितने पत्ते L हैं?

2 × deg 54 × deg 2
L =
6.ग्राफ़ सिद्धांतकठिन
10131513186310ABCDEF

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

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

3विलयन

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

उत्तर: C · Dijkstra का एल्गोरिदम

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

Dijkstra का एल्गोरिदम गैर-ऋणात्मक वेट के साथ काम करता है; Bellman–Ford ऋणात्मक वेट संभालता है; Kruskal मिनिमम स्पैनिंग ट्री बनाता है।

उत्तर

C · Dijkstra का एल्गोरिदम
2.एल्गोरिदम और जटिलता

उत्तर: C · W एक संख्या है, इसलिए समय W को लिखने में प्रयुक्त बिट्स की संख्या में घातांकी है

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

रनिंग टाइम W के मान में बहुपद है लेकिन उसकी लंबाई (log W बिट्स) में घातांकी है; 0/1 नैपसैक NP-complete है।

उत्तर

C · W एक संख्या है, इसलिए समय W को लिखने में प्रयुक्त बिट्स की संख्या में घातांकी है
3.डेटा संरचनाएँ

उत्तर: D · 20

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

20, 50 से और 30 से छोटा है, इसलिए वह 30 का बायाँ चाइल्ड बनता है; 40 उसका दायाँ चाइल्ड बनता है।

उत्तर

D · 20
4.डेटा संरचनाएँ

उत्तर: D · वे बिट अन्य तत्वों के भी हो सकते हैं, जिससे फ़ॉल्स नेगेटिव होंगे

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

साझा बिट साफ़ करने से कोई दूसरा तत्व अनुपस्थित दिखेगा; काउंटिंग ब्लूम फ़िल्टर हटाने की अनुमति देने के लिए बिट के बजाय काउंटर रखते हैं।

उत्तर

D · वे बिट अन्य तत्वों के भी हो सकते हैं, जिससे फ़ॉल्स नेगेटिव होंगे
5.ग्राफ़ सिद्धांत

उत्तर: L = 8

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

वृक्ष के लिए हैंडशेक लेमा

L + 18 = 2(L + 6) − 2
L = 8

उत्तर

L = 8

शॉर्टकट: L = 2 + Σ (d − 2), घात d ≥ 3 वाले शीर्षों पर।

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

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

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

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

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

A (0): B: 10, C: 13
B (10): D: 23, E: 20
C (13): E: 14
E (14): D: 22, F: 17
F (17)
D (22)

सबसे छोटा पथ

A → C → E → F
d(F) = 17

उत्तर

d(F) = 17

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