Table of Contents
درک پیچیدگی زمان الگوریتم های جستجو برای ارزیابی کارایی آنها در ساختارهای داده ضروری است.این به انتخاب مناسب ترین الگوریتم برای برنامه های خاص و بهینه سازی عملکرد کمک می کند.
جستجوی خطی
جستجوی خطی هر عنصر را در یک لیست به طور متوالی بررسی می کند تا زمانی که هدف پیدا شود یا لیست به پایان برسد، پیچیدگی زمان آن بر اساس موقعیت هدف متفاوت است.
در بدترین حالت، هنگامی که عنصر موجود نیست یا در پایان، الگوریتم تمام موارد را بررسی می کند، و در نتیجه پیچیدگی زمان (FLT:0O (n) .
جستجوی باینری
جستجوی باینری بر روی داده های مرتب شده با تقسیم مکرر فاصله جستجو در نیمه کار می کند، هدف را با عنصر وسط مقایسه می کند تا تصمیم بگیرد که نیمی از آن به جستجو ادامه می دهند.
در این هنگام، زمان جستجوی دودویی (FLT:0) در بدترین حالت، آن را به طور قابل توجهی سریع تر از جستجوی خطی برای مجموعه داده های بزرگ است.
جستجوی Table Search
جداول هش از یک تابع هش برای نقشه برداری کلید ها به مکان های خاص برای بازیابی سریع داده ها استفاده می کنند. عملیات جستجو به طور کلی پیچیدگی زمان ثابت دارند.
در شرایط ایده آل، پیچیدگی زمان (FLT:0) (1) است، اما برخورد می تواند عملکرد را کاهش دهد تا (n] در بدترین حالت.
خلاصه داستان : Search Algorithm Complexities
- [در این باره] [[[ویرایش] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]
- [در این باره] [[[ویرایش] [۱] [۱۰]
- [در این باره] [در این باره] [[[[۱]] [۱]] [۱۰] [۱] [۱] [۱] [۱] [۱۰] [۱] [۱] [۱] [۱۰] [۱] [۱] [۱] [۱] [۱] [۱] [۲] [۱] [۲] [۱] [۲] [۱] [۱] [۲] [۱] [۵] [۲] [۲] [۲] [۲] [۲] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۱] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [