حالت‌های بهترین، بدترین و متوسط: تفاوت میان نسخه‌ها

جز
Bot: Replace deprecated <source> tag and "enclose" parameter [https://lists.wikimedia.org/pipermail/wikitech-ambassadors/2020-April/002284.html]
(تمیزکاری با ویرایشگر خودکار فارسی)
جز (Bot: Replace deprecated <source> tag and "enclose" parameter [https://lists.wikimedia.org/pipermail/wikitech-ambassadors/2020-April/002284.html])
مثال: فرض کنید یک آرایه مرتب (صعودی) و کلیدx داده شده باشند. متوسط زمان اجرای [[الگوریتم جستجوی دودویی]] Binary Search را محاسبه کنید.
 
<sourcesyntaxhighlight lang="cpp">
Function BinarySearch(A, n, x)
low ←1
return 0
end.
</syntaxhighlight>
</source>
 
در این الگوریتم اگر x داخل آرایه موجود باشد تعدادی مقایسه با عناصر آرایه صورت می‌گیرد و نهایتاً جستجو موفق خواهد بود و اگر x داخل آرایه موجود نباشد تعدادی مقایسه با عناصر آرایه صورت می‌گیرد و نهایتاً جستجو ناموفق خواهد بود. مقایسه‌ها به صورت جستجو در یک [[درخت جستجوی دودویی]] انجام می‌شوند.
برای نمونه اگر بخواهیم [[پیچیدگی زمانی]] [[الگوریتم جستجوی ترتیبی|جستجوی ترتیبی]] را در '''حالت بهترین، بدترین و متوسط''' بررسی کنیم به صورت زیر داریم:
 
<sourcesyntaxhighlight lang="c">
int i=۰;
for(i=0;i<=n;i++)
cout<<"Not Found!";
return 0;
</syntaxhighlight>
</source>
 
در بهترین حالت: وقتی داده مورد نظر (x) را می‌خواهیم جستجو کنیم در ابتدای آرایه وجود دارد. [[پیچیدگی زمانی]] آن برابر <math> O(1)</math> می‌شود.
۴۱۱٬۱۲۹

ویرایش