Site icon

Time complexity With Data structure हिन्दी में-2023

एक algorithm कि कुशलता के बारे मे गहराई से जानने के लिए हम time complexity पढ़ते है।

किसी भी problem को solve करने के की तरीके हो सकते है। इससे हम ये भी कह सकते है कि एक problem के कई algorithms हो सकते है । Asymptotic Notations वो equations है जो हमे किसी प्रॉब्लेम के लिए बेस्ट algorithm ढूँढने मे मदद करे ।

Time complexity kya hai in hindi-

समय जटिलता क्या है?- “इनपुट की लंबाई निर्धारित करती है कि एल्गोरिदम को चलाने में कितना समय लगता है, जिसे अस्थायी जटिलता के रूप में जाना जाता है। यह गणना करता है कि प्रत्येक एल्गोरिथम के कोड स्टेटमेंट को चलने में कितना समय लगता है। यह एल्गोरिथ्म के समग्र निष्पादन समय को नहीं देखेगा।”

इसके बजाय, यह निष्पादन समय में भिन्नता (वृद्धि या कमी) के बारे में विवरण प्रदान करेगा जब एल्गोरिथ्म के संचालन की संख्या (वृद्धि या कमी) होगी। हां, जैसा कि परिभाषा में कहा गया है, आवश्यक समय पूरी तरह से इनपुट की लंबाई पर निर्भर करता है।

How does Binary Search work in hindi?

एक अंतराल से प्रारंभ करें जिसमें संपूर्ण सरणी शामिल है। यदि खोज कुंजी का मान अंतराल के बीच के आइटम से छोटा है, तो अंतराल को बाएँ आधे हिस्से तक सीमित करें। यदि नहीं, तो इसे दाहिने आधे हिस्से तक सीमित रखें। अंतराल खाली होने तक या मूल्य की खोज होने तक बार-बार जांचें।

सबसे आम खोज एल्गोरिदम में से एक बाइनरी सर्च एल्गोरिदम है। इस दृष्टिकोण का उपयोग करके Arrays को सॉर्ट किया जा सकता है। “विभाजन और जीत” रणनीति इस खोज तकनीक की नींव के रूप में कार्य करती है। प्रत्येक पुनरावृत्ति के साथ खोज स्थान आधा हो जाता है।

एक क्रमबद्ध सरणी के भीतर, बाइनरी खोज विधियाँ एक विशिष्ट मान खोजती हैं। यह खोज एल्गोरिदम फूट डालो और जीतो की रणनीति को नियोजित करता है। हालांकि, यह वास्तव में तेज़ है और डेटा को सॉर्ट करने की मांग करता है।

एक सरणी का केंद्र वह जगह है जहां खोज शुरू होती है, जैसे-जैसे यह आगे बढ़ती है, निचले या ऊपरी आधे हिस्से में जाती है। यदि औसत मूल्य वांछित मूल्य से कम है, तो खोज का विस्तार किया जाना चाहिए। यदि नहीं, तो उसे सरणी के अवरोही भाग पर ध्यान केंद्रित करना चाहिए।

आइए कुछ “order of” के mathematical definitions देखें

Asymptotic Notations के तीन प्रमुख प्रकार है –

  1. Big Oh notation ( O )
  2. Big Omega notation ( )
  3. Big Theta notation ( )

Big Oh Notation ( O )

Big Oh notation का प्रयोग asymptotic उच्चतर सीमा को दर्शाने के लिए किया जाता है । इस तरह ये एक algorithm कि worst time complexity बताता है ।

Mathematically , अगर f(x) किसी algorithm कि runtime को दर्शाता है , तो f(x) किसी दूसरे function g(x) का O(g(x)) है अगर एक positive constant c और मौजूद हो ताकि

0 f ( x ) c g( x ) ; जहां सभी n

अगर कोई function O ( n ) है , तो वो function O ( ) भी है ।

Big Omega notation ( )

Big oh notation कि तरह Big omega notation भी asymptotic सीमा के बारे मे बताता है लेकिन निम्नतर सीमा दर्शाता है । इस तरह एक algorithm कि best time complexity दर्शाता है ।

Mathematically, अगर f(x) किसी algorithm कि runtime को दर्शाता है , तो f(x) किसी दूसरे function g(x) का (g(x)) है अगर एक positive constant c और मौजूद हो ताकि

0 c g( x ) f( x) ; जहां सभी n

अगर कोई function ( n ) है , तो वो function ( ) भी है ।

Big Theta notation ( )

मान लीजिए f( x ) किसी program के runtime को दर्शाता है । तो –

f( x ) को ( g( x )) कहेंगे अगर f( x ) के लिए ऐसा g( x ) मौजूद हो जो O के भी सभी नियमों का पालन करे और के भी सभी नियमों को माने ।

Mathematically ,

0 f( x ) g( x ) ; जहां सभी n

0 g( x ) f( x ) ; जहां सभी n

दोनों equations को मिलने पे हमे मिलता है -:

0 g( x ) f( x ) g( x ) ; जहां सभी n

सीधे भाषा में ये equation हमे ये बताता है कि दो positive constants और ऐसे मौजूद होंगे जिससे ग्राफ पे f( x ) का ग्राफ g( x ) और g( x ) sandwich हो जाए ।

Big theta हमे सबसे बेहतर result देता है एक algorithm के लिए । Interviews और exams मे अक्सर इस topic से काफी सवाल किये जाते है और ये “order of” के लिए पूछा जाता है ।

Exit mobile version