در حالت کلی چندین شکل جستجو داریم که از این میان به جستجوی دودویی (جستجوی باینری) اشاره می کنیم و سورس کد این الگوریتم را نیز جهت استفاده قرار می دهیم. این الگوریتم بر روی داده هایی که بر حسب معیار مناسبی (صعودی یا نزولی) مرتب شده اند ، عمل می کند. روش پیدا کردن عنصر مورد جستجو در برنامه (کلید) بدین شکل است که ابتدا به وسط ارایه مراجعه می کنیم ، در صورتی که عنصر موجود بود اندیس آن عنصر (mid) برگشت داده می شود در صورتی که کلید از عنصر وسط بزرگتر باشد (در حالت صعودی) جستجو در نیمه بالایی انجام می گیرد در غیر اینصورت جستجو را در نیمه پایین ادامه می دهد.
در این روش در هر بار مقایسه ، بازه جستجو نصف می شود و حلقه اجرا نیز همینطور ، بنابراین مرتبه اجرایی آن (O(log n می باشد .
در بدترین حالت نیز تعداد مقایسه های از فرمول ۱ + [log n ] بدست می آید.در اینجا [] ها یعنی کف جواب رو نظر می گیریم.
موضوع : الگوریتم و ساختمان داده
زبان برنامه نویسی : C
مستندات : فایل .CPP
کامپایلر : Visual Studio
الگوریتم جستجوی باینری به زبان C