2013-10-03 8 views
7

मैं एक एल्गोरिथ्म है, और मुझे पता लगा है कि अपनी चलाने के समय जटिलता निम्न सूत्र इस प्रकार है:लॉग श्रृंखला के वर्ग के योग की गणना कैसे

[log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2 

लॉग के आधार 2.

है

मैं कैसे पता लगा सकता हूं कि Θ/और Omicron क्या है; एल्गोरिदमिक जटिलता इस सूत्र से है?

+0

इस गणित पर बेहतर ध्यान से अधिक हो सकती है स्टैक एक्सचेंज – slugonamission

+0

@slugonamission: क्या math.SE एल्गोरिदम से निपटता है? –

+0

क्या वे स्क्वायर ब्रैकेट किसी प्रकार के निकटतम पूर्णांक मान ऑपरेशन को इंगित करते हैं? – jxh

उत्तर

2
ऊपरी बाध्य आप similat लॉग इन करने के कारण कर सकते हैं (एन) = ओ (nlog (एन))

[log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2 < [log(n)]^2 + ... + [log(n)]^2 
                  = n[log(n)]^2 

[log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2 = O(n[log(n)]^2) 

लोअर बाउंड के लिए साबित करने के लिए, कि दिए गए योग दिखाने की जरूरत है> = लगातार कई के लिए

n [लॉग (एन)] का^2

राशि

[log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2 >= [log(n/2)]^2 + [log(n/2 + 1)]^2 + [log(3)]^2 + ....... + [log(n)]^2 

से मामले की पहली छमाही हटाया जा रहा है लॉग (एन/2)^2

साथ प्रत्येक शब्द की जगह
[log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2 >= (n/2) * [log(n/2)]^2 

लोअर बाध्य = (n/2) * [log(n) - 1]^2

हम साबित कर सकते हैं कि log(n) - 1 >= (1/2) * log(n)

इसलिए कम (n/8) * [log(n)]^2 बाध्य = और ऊपरी बाध्य = n * [log(n)]^2

तो Θ([log(1)]^2 + [log(2)]^2 + [log(3)]^2 + ....... + [log(n)]^2) = n * [log(n)]^2

+0

बहुत देर से उत्तर के लिए खेद है, आप सही हैं, धन्यवाद! – Alex

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