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

सूत्र-पत्रक, हर विषय के मुख्य विधि-चरण और 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एक स्रोत शीर्ष से बाकी सभी तक सबसे छोटे पथ, O(V + E) में
  2. Bएक मिनिमम स्पैनिंग ट्री, O(E log V) में
  3. Cशीर्षों के सभी युग्मों के बीच सबसे छोटे पथ, O(V³) में
  4. Dएक टोपोलॉजिकल क्रम, O(V²) में
2.एल्गोरिदम और जटिलताकठिन

कौन-सी तकनीक किसी भी इनपुट पर क्विकसॉर्ट को अपेक्षित (expected) O(n log n) रनिंग टाइम देती है?

  1. Aकेवल बाईं ओर रिकर्शन का उपयोग करना
  2. Bहमेशा पहला तत्व चुनना
  3. Cक्विकसॉर्ट चलाने से पहले इनपुट को सॉर्ट करना
  4. Dपिवट को समान रूप से यादृच्छिक (uniformly at random) चुनना
3.डेटा संरचनाएँमध्यम

सर्कुलर बफ़र (रिंग बफ़र) का उपयोग आमतौर पर किसे लागू करने के लिए किया जाता है?

  1. Aबाइनरी सर्च ट्री
  2. Bनिश्चित आकार की क्यू
  3. Cग्राफ़ ट्रैवर्सल
  4. Dहैश फ़ंक्शन
4.डेटा संरचनाएँकठिन

O(1) अतिरिक्त मेमोरी से कैसे पता लगाएँ कि सिंगली लिंक्ड लिस्ट में चक्र है या नहीं?

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

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

K5
H =
6.ग्राफ़ सिद्धांतकठिन
ABCDE

लंबाई 2 की कितनी बंद वॉक B से शुरू और समाप्त होती हैं? वॉक में शीर्ष और कोरें दोहराई जा सकती हैं। संख्या को N कहें।

M = संलग्नता आव्यूहL = 2
N =

3विलयन

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

उत्तर: C · शीर्षों के सभी युग्मों के बीच सबसे छोटे पथ, O(V³) में

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

फ़्लॉयड–वॉर्शल एक डायनेमिक प्रोग्रामिंग एल्गोरिदम है जो बारी-बारी से हर शीर्ष को मध्यवर्ती बिंदु के रूप में अनुमति देता है, O(V³) समय में।

उत्तर

C · शीर्षों के सभी युग्मों के बीच सबसे छोटे पथ, O(V³) में
2.एल्गोरिदम और जटिलता

उत्तर: D · पिवट को समान रूप से यादृच्छिक (uniformly at random) चुनना

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

यादृच्छिक पिवट के साथ हर इनपुट के लिए अपेक्षित रनिंग टाइम O(n log n) होता है; खराब मामले अब भी मौजूद हैं लेकिन बहुत असंभाव्य हैं।

उत्तर

D · पिवट को समान रूप से यादृच्छिक (uniformly at random) चुनना
3.डेटा संरचनाएँ

उत्तर: B · निश्चित आकार की क्यू

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

रिंग बफ़र head और tail इंडेक्स का उपयोग करता है जो घूमकर वापस आते हैं, जिससे निश्चित मेमोरी में O(1) enqueue और dequeue मिलते हैं।

उत्तर

B · निश्चित आकार की क्यू
4.डेटा संरचनाएँ

उत्तर: A · एक पॉइंटर को एक क़दम और दूसरे को दो क़दम चलाएँ और देखें कि वे मिलते हैं या नहीं

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

फ़्लॉयड के एल्गोरिदम में चक्र होने पर तेज़ पॉइंटर अंततः धीमे को पकड़ लेता है; अन्यथा तेज़ पॉइंटर null तक पहुँच जाता है।

उत्तर

A · एक पॉइंटर को एक क़दम और दूसरे को दो क़दम चलाएँ और देखें कि वे मिलते हैं या नहीं
5.ग्राफ़ सिद्धांत

उत्तर: H = 12

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

गिनें

H = (5 − 1)!/2 = 24/2 = 12

उत्तर

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

उत्तर: N = 4

घात: किसी शीर्ष की घात उससे मिलने वाली कोरों की संख्या है। हर कोर के दो सिरे होते हैं, इसलिए घातों का योग कोरों की संख्या का दोगुना होता है: Σ deg(v) = 2|E| (हैंडशेक लेमा)। अतः विषम घात वाले शीर्षों की संख्या सम होती है। Kn में n(n − 1)/2 कोरें होती हैं, n शीर्षों पर k-नियमित ग्राफ़ में nk/2, और n शीर्षों वाले वृक्ष में n − 1 कोरें।

संलग्नता आव्यूह

A: 0 1 0 0 0
B: 1 0 1 1 1
C: 0 1 0 0 1
D: 0 1 0 0 1
E: 0 1 1 1 0

उभयनिष्ठ पड़ोसी

(M²)BB = 1·1 + 0·0 + 1·1 + 1·1 + 1·1 = 4

उत्तर

N = 4

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