Линейно търсене спрямо двоично търсене

Автор: Laura McKinney
Дата На Създаване: 4 Април 2021
Дата На Актуализиране: 10 Може 2024
Anonim
Новости в Etsy алгоритъма за търсене
Видео: Новости в Etsy алгоритъма за търсене

Съдържание

Разликата между линейното търсене и двоичното търсене е, че при линейното търсене всеки елемент се проверява и сравнява и след това сортира, докато при двоично търсене списък, който трябва да бъде сортиран, се разделя на две части и след това се сортира. Търсенето и сортирането са две основни понятия в компютърното програмиране. Много алгоритми се използват за търсене и сортиране, но двата най-използвани алгоритми за търсене и сортиране са линейно търсене и двоично търсене.


Разликата между линейното търсене и двоичното търсене е работата и ефективността на двата алгоритъма. Двоичното търсене е много по-ефективен алгоритъм в сравнение с алгоритъма за линейно търсене. Итерацията или времето, необходимо за сравняване на всяка стойност преди сортирането, е по-малко при бинарното търсене в сравнение с линейното търсене.

Линейното търсене е много сложен алгоритъм, ако искате да търсите число в списък, да сравнявате и повторите понякога броя на стойностите в списъка. Всеки по един елемент от списъка се извлича и сравнява със съседния елемент. Достъп до всички елементи се проверява и се проверява и тогава се намира правилния елемент. Възможно е най-лошият случай, ако последният номер в списъка е числото, което трябва да се търси. Линейното търсене е методът, чрез който се преминава масивът и се основава търсеният елемент. Ако говорим за ефективността, ефективността е броя пъти, през които програмата трябва да се изпълни, за да намери числото. Ако намерим търсеното число на първа позиция, тогава трябва да се направи само едно сравнение и нещата са подредени, но ако не, тогава сравненията трябва да се правят отново и отново и паметта се губи. Средно броят на сравненията ще бъде (n + 1/2). И най-лошата ефективност на тази техника е O (n) означава реда на изпълнение.


В сравнение с линейното търсене бинарното търсене е много ефективно. При този метод масивът е разделен на две части и по този начин броят на сравненията е много по-малък в сравнение с двоичното търсене. Времето също е по-малко при бинарното търсене в сравнение с линейното търсене. Бинарното търсене работи по начина, по който е намерен средният елемент от масива и след това средният елемент се сравнява с една част от масива. Може да има три възможности, които са средно число, може да бъде числото, което трябва да намерим, или числото, което е по-малко от средното число или числото, което е по-голямо от средата на средното число. Броят на сравненията е най-много log (N + 1). Двоичното търсене в сравнение с линейното търсене е ефективен алгоритъм в сравнение с линейното търсене, но масивът трябва да бъде сортиран, преди да извършите двоичното търсене.

Съдържание: Разлика между линейно търсене и двоично търсене

  • Сравнителна диаграма
  • Двоично търсене
  • Ключови разлики
  • заключение
  • Обяснително видео

Сравнителна диаграма

основаЛинейно търсенеДвоично търсене
значениеЛинейно търсене всеки елемент се проверява и сравнява и след това се сортира

Двоично търсене списък, който трябва да бъде сортиран, се разделя на две части и след това се сортира.


 

Време сложностВременната сложност на линейното търсене е O (N).Времевата сложност на двоичното търсене е O (лог 2 Н)
Тип на алгоритъмаЛинейното търсене е итеративно.Двоичното търсене е Разделете и завладете.
Ред с кодПри линейно търсене трябва да напишем повече код.При двоично търсене трябва да пишем по-малко код.

Линейно търсене

Линейното търсене е много сложен алгоритъм, ако искате да търсите число в списък, да сравните и повторите някои пъти броя на стойностите в списъка. Всеки по един елемент от списъка се извлича и сравнява със съседния елемент. Достъпват се всички елементи и се проверяват и след това се намира правилния елемент. Възможно е най-лошият случай, ако последният номер в списъка е числото, което трябва да се търси. Линейното търсене е методът, чрез който се преминава масивът и се основава търсеният елемент. Ако говорим за ефективността, ефективността е броя пъти, през които програмата трябва да се изпълни, за да намери числото. Ако намерим търсеното число на първа позиция, тогава трябва да се направи само едно сравнение и нещата са подредени, но ако не, тогава сравненията трябва да се правят отново и отново и паметта се губи. Средно броят на сравненията ще бъде (n + 1/2). И най-лошият случай ефективността на тази техника е, че O (n) означава реда на изпълнение.

Двоично търсене

В сравнение с линейното търсене, бинарното търсене е много ефективно. При този метод масивът е разделен на две части и по този начин броят на сравненията е много по-малък в сравнение с двоичното търсене. Времето също е по-малко при бинарното търсене в сравнение с линейното търсене. Бинарното търсене работи по начина, по който е намерен средният елемент от масива и след това средният елемент се сравнява с една част от масива.

Може да има три възможности, които са средно число, може да бъде числото, което трябва да намерим, или числото, което е по-малко от средното число или числото, което е по-голямо от средата на средното число. Броят на сравненията е най-много log (N + 1). Двоичното търсене в сравнение с линейното търсене е ефективен алгоритъм в сравнение с линейното търсене, но масивът трябва да бъде сортиран, преди да извършите двоичното търсене.

Ключови разлики

  1. Линейно търсене всеки елемент се проверява и сравнява и след това се сортира, докато двоичното търсене на списък, който трябва да бъде сортиран, се разделя на две части и след това се сортира.
  2. Временната сложност на линейното търсене е 0 (N), докато сложността на време в двоичното търсене е O (лог2Н).
  3. Линейното търсене е итеративно, докато двоичното търсене е Разделете и завладейте.
  4. При линейното търсене трябва да пишем повече код, докато при двоично търсене трябва да пишем по-малко код.

заключение

В тази статия по-горе виждаме ясната разлика между линейното търсене и двоичното търсене.

Обяснително видео