درک پیچیدگی زمان الگوریتم های جستجو برای ارزیابی کارایی آنها در ساختارهای داده ضروری است.این به انتخاب مناسب ترین الگوریتم برای برنامه های خاص و بهینه سازی عملکرد کمک می کند.

جستجوی خطی

جستجوی خطی هر عنصر را در یک لیست به طور متوالی بررسی می کند تا زمانی که هدف پیدا شود یا لیست به پایان برسد، پیچیدگی زمان آن بر اساس موقعیت هدف متفاوت است.

در بدترین حالت، هنگامی که عنصر موجود نیست یا در پایان، الگوریتم تمام موارد را بررسی می کند، و در نتیجه پیچیدگی زمان (FLT:0O (n) .

جستجوی باینری

جستجوی باینری بر روی داده های مرتب شده با تقسیم مکرر فاصله جستجو در نیمه کار می کند، هدف را با عنصر وسط مقایسه می کند تا تصمیم بگیرد که نیمی از آن به جستجو ادامه می دهند.

در این هنگام، زمان جستجوی دودویی (FLT:0) در بدترین حالت، آن را به طور قابل توجهی سریع تر از جستجوی خطی برای مجموعه داده های بزرگ است.

جداول هش از یک تابع هش برای نقشه برداری کلید ها به مکان های خاص برای بازیابی سریع داده ها استفاده می کنند. عملیات جستجو به طور کلی پیچیدگی زمان ثابت دارند.

در شرایط ایده آل، پیچیدگی زمان (FLT:0) (1) است، اما برخورد می تواند عملکرد را کاهش دهد تا (n] در بدترین حالت.

خلاصه داستان : Search Algorithm Complexities

  • [در این باره] [[[ویرایش] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱] [۱]
  • [در این باره] [[[ویرایش] [۱] [۱۰]
  • [در این باره] [در این باره] [[[[۱]] [۱]] [۱۰] [۱] [۱] [۱] [۱] [۱۰] [۱] [۱] [۱] [۱۰] [۱] [۱] [۱] [۱] [۱] [۱] [۲] [۱] [۲] [۱] [۲] [۱] [۱] [۲] [۱] [۵] [۲] [۲] [۲] [۲] [۲] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۱] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [۲] [