मान लीजिए कि मैं कुछ सरल लागू कर रहा हूं जैसे कि एक क्रमबद्ध सूची / सरणी खोजना। फ़ंक्शन (c # में) समान दिखाई देगा:
static int FindIndex(int[] sortedList, int i);
मैं इसे कार्यक्षमता के संदर्भ में लागू कर सकता हूं और परीक्षण कर सकता हूं, लेकिन स्पष्ट कारणों से मैं आमतौर पर एक रैखिक खोज या किसी जानबूझकर बेवकूफ पर एक द्विआधारी खोज को प्राथमिकता दूंगा।
तो मेरा सवाल है: क्या हमें एल्गोरिदम जटिलता के संदर्भ में प्रदर्शन की गारंटी देने वाले परीक्षण लिखने का प्रयास करना चाहिए और यदि हां, तो कैसे?
मैंने इस प्रश्न के "आप को चाहिए" दोनों पक्षों पर तर्क देना शुरू कर दिया है, लेकिन मैं यह देखना चाहूंगा कि लोग मेरे तर्कों के बिना क्या कहते हैं उन्हें संकेत दें।
"कैसे" के संदर्भ में, यह बहुत दिलचस्प हो जाता है :) आप तुलना ऑपरेटर के पैरामीटर को देख सकते हैं और एक परीक्षण कर सकते हैं जिसका तुलना ऑपरेटर तुलना या ऐसा कुछ गिनता है। लेकिन सिर्फ इसलिए कि आप का मतलब यह नहीं हो सकता है कि आपको ...
क्या किसी और ने इस पर विचार किया है (शायद)? धन्यवाद।