Źródło: Arkusze CKE
Która metoda wyszukiwania potrzebuje posortowanej listy do prawidłowego działania?
Warianty odpowiedzi
-
A
Wyszukiwanie sekwencyjne
-
B
Wyszukiwanie liniowe
-
C
Wyszukiwanie z hashem
-
D
Wyszukiwanie binarne
Wyjaśnienie
Wyszukiwanie binarne działa dokładnie tak jak ty, gdy szukasz słowa w papierowym słowniku. Otwierasz go na środku i sprawdzasz, czy szukane hasło jest wcześniej, czy później.
Żeby ten trik zadziałał, słownik musi być ułożony alfabetycznie. Gdyby słowa były wymieszane losowo, strzelanie w środek nic by ci nie dało i musiałbyś przeglądać kartka po kartce.
Dokładnie tak samo jest w kodzie. Wyszukiwanie binarne odrzuca połowę danych przy każdym kroku, ale jest to możliwe tylko wtedy, gdy kolekcja jest wcześniej posortowana.