2016-09-05 4 views
5
While(n>=1) 
{ 
    n=n/20; 
    n=n/6; 
    n=10×n; 
    n=n-10000; 
} 

मैं इस =>दिए गए कोड की समय जटिलता क्या है?

इस पाश में की तरह की कोशिश की, एन एन/12 से कम हो जाता है - 10000 हां, समय जटिलता हे है (लॉग एन)।

+1

यदि आपको पता है कि जटिलता क्या हो सकती है, तो आप कुछ एन के लिए ठोस मानों की गणना कर सकते हैं और परिणामी ग्राफ की अनुमानित जटिलता के साथ तुलना कर सकते हैं। यदि दोनों ग्राफ समान हैं, तो आप यह साबित करना शुरू कर सकते हैं कि आपकी धारणा सही क्यों है। – MrSmith42

+0

धन्यवाद! मैं इसे ध्यान में रखूंगा – Garrick

+1

कृपया प्रत्येक कुछ घंटों में मूल रूप से वही प्रश्न पोस्ट न करें (http://stackoverflow.com/questions/39324836/what-is-the-time-complexity-of-given-code) । आप पहले एक और सामान्य क्यू एंड ए पढ़ना चाहेंगे, जैसे: http://stackoverflow.com/questions/11032015/how-to-find-time-complexity-of-an-algorithm – m69

उत्तर

6

यह सही लगता है। यदि यह एक अभ्यास है, तो आपको यह तर्क देने के लिए तैयार होना चाहिए कि O(log_12(N))O(log(N)) क्यों है।

+1

विकास के क्रम में लॉगरिदम के आधार असीमित हैं : विभिन्न आधारों के लिए लघुगणक निरंतर कारकों से भिन्न होते हैं – Garrick

+1

हां, लेकिन क्या आप गणितीय रूप से साबित कर सकते हैं? – mort

+0

मुझे नहीं पता कि मुझे गलत कहां मिल रहा है लेकिन यह क्यों नहीं है ओ (लॉग (एन + निरंतर)) '? – YiFei

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