2012-02-02 21 views
5

क्या कोई मुझे सरल तरीके से समझा सकता है कि जब बड़े ओ नोटेशन की बात आती है तो स्थिरांक कोई फर्क नहीं पड़ता? स्थिरता जोड़ने पर जटिलता वही क्यों रहती है। यह होमवर्क प्रश्न नहीं है, मैं बस इसे बेहतर समझना चाहता हूं। मुझे यह सीधे बड़ा ओ प्राप्त करने के लिए एक समारोह के व्यवहार को देखने के लिए है क्योंकि यह अनंतता के करीब आता है?जटिलता। स्थिरता क्यों नहीं है?

मुझे यह मिला। बहुत बहुत धन्यवाद।

+0

क्योंकि निरंतर एन से स्वतंत्र है: यह नहीं बदलता है, यानी यह स्थिर है। –

उत्तर

7

जटिलता सिद्धांत के लिए कोई फर्क नहीं पड़ता, जो केवल में इनपुट आकार के रूप में फ़ंक्शन स्केल के रूप में रुचि रखते हैं।

एक स्थिरता इस बात को प्रभावित नहीं करती है कि फ़ंक्शन कैसे इनपुट आकार के रूप में व्यवहार करता है, अनंत काल की ओर बढ़ता है।

हालांकि, यदि आप वास्तव में कोड का एक निश्चित टुकड़ा चलाने में रूचि रखते हैं, तो आप बड़े पैमाने पर ओवरहेड में रुचि रखते हैं और फ़ंक्शन छोटे इनपुट आकारों के लिए कैसे कार्य करता है।

जटिलता सिद्धांत और अभ्यास के बीच अंतर।

0

बिग-ओ नोटेशन इस बात के बारे में है कि वस्तुओं की संख्या में परिवर्तन होने पर संसाधनों का उपयोग (समय, स्मृति) कैसे बदलता है। तो, उदाहरण के लिए, यदि मेरा कंप्यूटर 1 सेकंड में 10 आइटम, 4 सेकंड में 20 आइटम और 9 सेकंड में 30 आइटम सॉर्ट कर सकता है, तो यह ओ (एन ²) है।

यदि मैं उन वस्तुओं को क्रमशः 10 सेकंड, 40 सेकंड और 90 सेकंड में क्रमबद्ध कर सकता हूं, तो मैं अभी भी ओ (एन ²) हूं, लेकिन मेरा निरंतर कारक 10 गुना बड़ा है: समस्या का एक ही आकार कंप्यूटर के रूप में मुझे दस गुना लेता है।

3

उत्तर ... परिभाषा के अनुसार है। अगर कुछ फ़ंक्शन f(x) कुछ फ़ंक्शन g(x) का बड़ा-ओ है, तो इसका मतलब है कि f(x) कुछ निश्चित समय g(x) से "अंततः" छोटा है। (यानी बड़े x के लिए पर्याप्त)। स्थिरता का वास्तविक मूल्य कोई फर्क नहीं पड़ता; न ही "अंततः" व्यवहार की स्थिति - जब तक यह काफी बड़े x और पर्याप्त पर्याप्त स्थिर के लिए सच है, तो आप कवर कर रहे हैं।

आप स्थिरांक में जोड़ सकते हैं, या छोटे ओ के साथ कुछ भी, और इससे कोई फर्क नहीं पड़ता - यह सब कुछ सबसे तेज़ बढ़ता है, और कौन सा शब्द x बढ़ता है।

1

बिग ओ बताता है कि इनपुट में बड़ी संख्या में जटिलता कैसे बदलती है। जितना बड़ा आपका इनपुट कम महत्वपूर्ण स्थिरांक हो जाता है। उदाहरण के लिए, 10 से कुछ गुणा करना कुछ वर्गों की तुलना में काफी कम महत्वपूर्ण है जब एन दस लाख या एक बिलियन हो जाता है। बिग ओ सटीक माप नहीं है, यह आपके एल्गोरिदम को जटिलता के किसी न किसी वर्ग में डालने का एक तरीका है ताकि आप स्थिरांक को बंद कर सकें क्योंकि वे बड़े एन मूल्यों के साथ सार्थक नहीं हैं।

5

व्यावहारिकता में, कभी-कभी स्थिरांक कार्य करते हैं। लेकिन, जब हम बिग ओ नोटेशन के बारे में बात करते हैं, तो हम असीम व्यवहार को देख रहे हैं। निरंतर कारण एसिम्प्टोटिक व्यवहार को प्रभावित नहीं करता है क्योंकि तेजी से बढ़ते वक्र वाला एक कार्य हमेशा एक धीमी बढ़ती वक्र के साथ एक समारोह को आगे बढ़ाएगा, यहां तक ​​कि एक विशाल स्थिरता की उपस्थिति में भी (हालांकि इसमें जाने में अधिक समय लगेगा, बेशक)।

इस प्रकार हम कहते हैं कि निरंतर "कोई फर्क नहीं पड़ता", क्योंकि यह वक्र के बीच एसिम्प्टोटिक संबंध कभी नहीं बदल सकता है।

1

कॉन्स्टेंट बड़े-ओ नोटेशन में महत्वपूर्ण नहीं हैं क्योंकि चिंता स्केलेबिलिटी है।

+0

जब तक कि आप स्केल करना नहीं चाहते ... – Thilo

संबंधित मुद्दे