Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> प्रोग्रामिंग

डेटा संरचना में पुनरावृत्ति समीकरण (Recurrence Equations)


एल्गोरिदम के विश्लेषण के दौरान, हम कुछ पुनरावृत्ति संबंध पाते हैं। ये पुनरावृत्ति संबंध मूल रूप से अभिव्यक्ति में उसी फंक्शन का उपयोग कर रहे हैं। रिकर्सिव एल्गोरिदम विश्लेषण, और डिवाइड एंड कंकर एल्गोरिदम के अधिकांश मामलों में हमें पुनरावृत्ति संबंध मिलते हैं।

यहां हम कुछ उदाहरणों की मदद से पुनरावृत्ति समीकरण का एक उदाहरण देखेंगे। मान लें हम बाइनरी सर्च तकनीक का उपयोग कर रहे हैं। इस तकनीक में, हम जांचते हैं कि तत्व अंत में मौजूद है या नहीं। यदि वह मध्य में मौजूद है, तो एल्गोरिदम समाप्त हो जाता है, अन्यथा हम वास्तविक ऐरे से बार-बार बाएं और दाएं सबऐरे लेते हैं। इसलिए प्रत्येक चरण में ऐरे का आकार n/2 से घट जाता है। मान लें बाइनरी सर्च एल्गोरिदम निष्पादित होने में T(n) समय लेता है। बेस कंडीशन O(1) समय लेती है। इसलिए पुनरावृत्ति समीकरण नीचे जैसा होगा -

$$T(n)=\begin{cases}T(1) & \text{ for } n \leq 1\\T(|\frac{n}{2}|)+c & \text{ for } n > 1\end{cases}$$

इसी तरह, यदि हम मर्ज सॉर्ट जैसे एक और उदाहरण चुनते हैं, तो उस मामले में हम लिस्ट को दो भागों में विभाजित करते हैं। यह विभाजन तब तक होता है जब तक लिस्ट का आकार केवल 1 नहीं हो जाता। उसके बाद हम उन्हें सॉर्टेड ऑर्डर में मर्ज करते हैं। मर्जिंग एल्गोरिदम O(n) समय लेता है। इसलिए यदि मर्ज सॉर्ट एल्गोरिदम T(n) समय ले रहा है, तो इसे दो हिस्सों में विभाजित करके, और उनमें से प्रत्येक के लिए वही कार्य करके, वे T(n/2) लेंगे और इसी तरह। इसलिए पुनरावृत्ति संबंध नीचे जैसा होगा -

$$T(n)=\begin{cases}T(1) & \text{ for } n = 1\\2T(\frac{n}{2})+cn & \text{ for } n > 1\end{cases}$$

हम इन समीकरणों को विभिन्न विधियों का उपयोग करके हल कर सकते हैं, जैसे प्रतिस्थापन, पुनरावृत्ति ट्री विधि, और कुछ विशेष प्रकार के पुनरावृत्ति संबंधों को मास्टर मेथड का उपयोग करके हल किया जा सकता है।

  1. डेटा संरचना में B+ ट्री क्वेरी (B+ tree Query) डेटा संरचना में B+ ट्री क्वेरी (B+ tree Query)

    यहाँ हम देखेंगे कि B+ ट्री में खोज कैसे की जाती है। B+ ट्री खोज को B+ ट्री क्वेरीिंग (B+ Tree Querying) के रूप में भी जाना जाता है। यह एल्गोरिदम B-ट्री की क्वेरी करने के समान है। इसके अलावा, यह रेंज क्वेरी (range query) का समर्थन करता है। मान लीजिए हमारे पास नीचे जैसा B+ ट्री है: B+ ट्री का उदाहरण

  1. डेटा संरचना में B+ ट्री (The B+ tree) डेटा संरचना में B+ ट्री (The B+ tree)

    यहाँ हम देखेंगे कि B+ ट्री (B+ Trees) क्या हैं। B+ ट्री B-ट्री का विस्तारित संस्करण हैं। यह ट्री B-ट्री की तुलना में बेहतर सम्मिलन, विलोपन और खोज का समर्थन करता है। B-ट्री में, कुंजियाँ और रिकॉर्ड मान आंतरिक और साथ ही पत्ती नोड्स में संग्रहीत होते हैं। B+ ट्री में रिकॉर्ड्स, पत्ती नोड पर संग्रहीत

  1. हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure) हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure)

    परिचय (Introduction) टेम्पलेट पैरामीटर्स के लिए HDS या हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure - संक्षिप्त HalfedgeDS) को एक एज-केंद्रित डेटा स्ट्रक्चर (Edge-centered Data Structure) के रूप में परिभाषित किया जाता है जो वर्टेक्स, एज और फेसेस (Vertices, Edges and Faces) की घटना जानकारी (Incidenc