برای درک اهمیت الگوریتمهای کارا یا به بیان دیگر لزوم استفاده از الگوریتمهای کاراتر بهتر است دو الگوریتم خاص را برای جستجوی یک عدد در یک آرایهٔ مرتب غیر نزولی با یکدیگر مقایسه کنیم. آن دو الگوریتم عبارتند از: جستجوی ترتیبی (sequential search) و جستجوی دودویی (binary search).
در الگوریتم جستجوی ترتیبی برای یافتن عنصر مشخص x در آرایه، از ابتدای آرایه آغاز کرده و به ترتیب یکی یکی عناصر را با آن مقایسه می کنیم. هرکدام که با عنصر x برابر بود، مکان همان عنصر را در آرایه بعنوان جواب معرفی کرده و در صورت عدم وجود عنصر x عدد صفر را بعنوان خروجی الگوریتم معرفی می کنیم.یک الگوریتم جستجوی ترتیبی به صورت زیر است:
const keytype S, keytype x, index& location){
location = 1; While (location<=n && S!=x) location ++; if (location> n) location = 0;}اما در الگوریتم جستجوی دودویی روش کار به این صورت است که ابتدا عنصر x را با عنصر میانی آرایه مقایسه می کنیم، اگر برابر بودند به جواب رسیده ایم و اگر نه دو حالت روی خواهد داد.
در الگوریتم جستجوی ترتیبی برای یافتن عنصر مشخص x در آرایه، از ابتدای آرایه آغاز کرده و به ترتیب یکی یکی عناصر را با آن مقایسه می کنیم. هرکدام که با عنصر x برابر بود، مکان همان عنصر را در آرایه بعنوان جواب معرفی کرده و در صورت عدم وجود عنصر x عدد صفر را بعنوان خروجی الگوریتم معرفی می کنیم.یک الگوریتم جستجوی ترتیبی به صورت زیر است:
const keytype S, keytype x, index& location){
location = 1; While (location<=n && S!=x) location ++; if (location> n) location = 0;}اما در الگوریتم جستجوی دودویی روش کار به این صورت است که ابتدا عنصر x را با عنصر میانی آرایه مقایسه می کنیم، اگر برابر بودند به جواب رسیده ایم و اگر نه دو حالت روی خواهد داد.
wiki: کارایی الگوریتمی