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

डेटा संरचनाओं में परिशोधित समय जटिलता

परिशोधन विश्लेषण

इस विश्लेषण का उपयोग तब किया जाता है जब कभी-कभी ऑपरेशन बहुत धीमा होता है, लेकिन अधिकांश ऑपरेशन जो बहुत बार निष्पादित होते हैं, वे तेज़ होते हैं। डेटा संरचनाओं में हमें हैश टेबल्स, डिसजॉइंट सेट्स आदि के लिए परिशोधित विश्लेषण की आवश्यकता होती है।

हैश-टेबल में, अधिकांश समय खोज समय जटिलता ओ (1) है, लेकिन कभी-कभी यह ओ (एन) संचालन निष्पादित करता है। जब हम अधिकांश मामलों के लिए हैश तालिका में किसी तत्व को खोजना या सम्मिलित करना चाहते हैं तो यह कार्य करने में निरंतर समय लगता है, लेकिन जब कोई टकराव होता है, तो उसे टकराव समाधान के लिए O(n) बार संचालन की आवश्यकता होती है।

एग्रीगेट मेथड

कुल लागत का पता लगाने के लिए समग्र विधि का उपयोग किया जाता है। यदि हम डेटा का एक गुच्छा जोड़ना चाहते हैं, तो हमें इस सूत्र द्वारा परिशोधित लागत का पता लगाना होगा।

n संचालन के अनुक्रम के लिए, लागत है -

$\frac{लागत ( n\:ऑपरेशंस)}{n}=\frac{लागत (सामान्य\:ऑपरेशंस)+लागत (महंगा\:ऑपरेशंस)}{n}$

परिशोधन विश्लेषण पर उदाहरण

एक गतिशील सरणी के लिए, ओ (1) समय में दिए गए इंडेक्स पर आइटम डाले जा सकते हैं। लेकिन अगर वह अनुक्रमणिका सरणी में मौजूद नहीं है, तो यह कार्य को निरंतर समय में करने में विफल रहता है। उस स्थिति के लिए, यह शुरू में सरणी के आकार को दोगुना कर देता है, फिर यदि सूचकांक मौजूद है तो तत्व सम्मिलित करता है।

डेटा संरचनाओं में परिशोधित समय जटिलता

गतिशील सरणी के लिए, ci =ith प्रविष्टि की लागत दें।

$So\:ci=1+\ start{cases}i\:-\:1,if\:i-1\:is\:power\:of\:2 \\0, \:\:\:\ :\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:\:अन्यथा \end{मामलों}$

$$\frac{\displaystyle\sum\limits_{i=1}^n ci}{n}\leq\frac{n+\displaystyle\sum\limits_{j=1}^{\lfloor\log{2}{ \lgroup n-1\rgroup}\rfloor} 2j}{n}=\frac{O\lgroup n\rgroup}{n}$$


  1. परिशोधित जटिलता

    परिशोधन विश्लेषण इस विश्लेषण का उपयोग तब किया जाता है जब कभी-कभी ऑपरेशन बहुत धीमा होता है, लेकिन अधिकांश ऑपरेशन जो बहुत बार निष्पादित होते हैं, वे तेज़ होते हैं। डेटा संरचनाओं में हमें हैश टेबल्स, डिसजॉइंट सेट्स आदि के लिए परिशोधित विश्लेषण की आवश्यकता होती है। हैश-टेबल में, अधिकांश समय खोज समय जट

  1. स्पर्शोन्मुख जटिलता

    एसिम्प्टोटिक विश्लेषण स्पर्शोन्मुख विश्लेषण का उपयोग करके, हम इनपुट आकार के आधार पर एल्गोरिथ्म के प्रदर्शन के बारे में एक विचार प्राप्त कर सकते हैं। हमें सटीक रनिंग टाइम की गणना नहीं करनी चाहिए, लेकिन हमें रनिंग टाइम और इनपुट साइज के बीच संबंध का पता लगाना चाहिए। इनपुट का आकार बढ़ने पर हमें रनिंग ट

  1. पत्राचार आधारित डेटा संरचनाएं

    टोटल और लीफ पत्राचार अधिक परिष्कृत पत्राचार तकनीक हैं। इन दोनों तकनीकों में, आधे तत्व न्यूनतम PQ में और अन्य आधे अधिकतम PQ में स्थित होते हैं। जब तत्वों की संख्या विषम होती है, तो एक तत्व बफर में संग्रहीत होता है। यह बफ़र किया गया तत्व या तो PQ का सदस्य नहीं है। कुल पत्राचार तकनीक में, न्यूनतम PQ मे