मुझे इस फ़ंक्शन की जटिलता कैसे मिल सकती है?Math.Sqrt() की समय जटिलता?
private double EuclideanDistance(MFCC.MFCCFrame vec1, MFCC.MFCCFrame vec2)
{
double Distance = 0.0;
for (int K = 0; K < 13; K++)
Distance += (vec1.Features[K] - vec2.Features[K]) * (vec1.Features[K] - vec2.Features[K]);
return Math.Sqrt(Distance);
}
मुझे पता है कि नीचे अनुभाग हे (1) है:
double Distance = 0.0;
for (int K = 0; K < 13; K++)
Distance += (vec1.Features[K]-vec2.Features[K])*(vec1.Features[K]-vec2.Features[K]);
लेकिन मैं समझ नहीं क्या Math.Sqrt()
की जटिलता है।
बस सोच रहा है, क्या यह बयान के लिए ओ (एन) की समय जटिलता का नहीं होना चाहिए क्योंकि यह प्रभावी रूप से एक सरणी पर फिर से चलाता है? – RedLaser
नहीं, यह ओ (13) है, सरणी आकार तय है, इसलिए ओ (1) वास्तव में। – ferit