किसी एल्गोरिदम की लागत का अनुमान लगाने के लिए अलग-अलग विधियां हैं। उनमें से एक ऑपरेशन काउंट का उपयोग करके है। हम विभिन्न ऑपरेशनों में से एक को चुनकर एल्गोरिदम की टाइम कॉम्प्लेक्सिटी का अनुमान लगा सकते हैं। ये ऐड, सब्ट्रैक्ट आदि जैसे हैं। हमें यह जांचना होगा कि इनमें से कितने ऑपरेशन किए गए हैं। इस विधि की सफलता उन ऑपरेशनों की पहचान करने की हमारी क्षमता पर निर्भर करती है जो अधिकांश टाइम कॉम्प्लेक्सिटी में योगदान करते हैं।
मान लें हमारे पास आकार n [0 से n-1] का एक ऐरे है। हमारा एल्गोरिदम सबसे बड़े तत्व का इंडेक्स ढूंढेगा। हम ऐरे के प्रत्येक जोड़ी तत्वों के बीच किए गए तुलना ऑपरेशन की संख्या गिनकर लागत का अनुमान लगा सकते हैं। हमें याद रखना होगा कि हम केवल एक ऑपरेशन चुनेंगे। इस एल्गोरिदम में कुछ और ऑपरेशन हैं जैसे इटरेशन वेरिएबल i का इंक्रीमेंट, या इंडेक्स के लिए मान असाइन करना आदि। लेकिन इस मामले में उन पर विचार नहीं किया जाता है।
एल्गोरिदम
getMax(arr, n):
index := 0
max := arr[0]
for i in range 1 to n - 1, do
if arr[i] > max, then
max := arr[i]
index := i
end if
done
return indexहमें उन ऑपरेशनों को चुनना होगा जो लागत का अनुमान लगाने के लिए अधिकतम मात्रा में किए जाते हैं। मान लें हमारे पास एक बबल सॉर्ट एल्गोरिदम है, और हम स्वैप ऑपरेशन गिनते हैं। तो हमें ध्यान रखना होगा कि यह अधिकतम कब होगा। वह विश्लेषण के दौरान हमें अधिकतम परिणाम देगा।