Wyszukiwanie liniowe (klasyczne)

Program przeszukuje listę element po elemencie i zwraca indeks szukanego elementu lub informację, że go nie znaleziono.

Linia 1. def wyszukiwanie podkreślnik liniowe otwórz nawias okrągły lista przecinek szukana zamknij nawias okrągły dwukropek. Linia 2. for i in range otwórz nawias okrągły len otwórz nawias okrągły lista zamknij nawias okrągły zamknij nawias okrągły dwukropek. Linia 3. if lista otwórz nawias kwadratowy i zamknij nawias kwadratowy znak równości znak równości szukana dwukropek. Linia 4. return i kratka indeks znalezionego elementu. Linia 5. return minus 1 kratka element nie został znaleziony. Linia 8. kratka Przykład użycia. Linia 9. dane znak równości otwórz nawias kwadratowy 4 przecinek 7 przecinek 2 przecinek 9 przecinek 5 zamknij nawias kwadratowy. Linia 10. x znak równości 9. Linia 12. wynik znak równości wyszukiwanie podkreślnik liniowe otwórz nawias okrągły dane przecinek x zamknij nawias okrągły. Linia 13. if wynik wykrzyknik znak równości minus 1 dwukropek. Linia 14. print otwórz nawias okrągły f cudzysłów Element otwórz nawias klamrowy x zamknij nawias klamrowy znaleziony na indeksie otwórz nawias klamrowy wynik zamknij nawias klamrowy cudzysłów zamknij nawias okrągły. Linia 15. else dwukropek. Linia 16. print otwórz nawias okrągły f cudzysłów Element otwórz nawias klamrowy x zamknij nawias klamrowy nie został znaleziony cudzysłów zamknij nawias okrągły.

Wyszukiwanie liniowe z wartownikiem

W tej wersji dodajemy wartownika na koniec listy. Wartownik  ma taką samą wartość jak szukany element. Dzięki temu nie trzeba sprawdzać warunku końca listy w pętli.

Linia 1. def wyszukiwanie podkreślnik z podkreślnik wartownikiem otwórz nawias okrągły lista przecinek szukana zamknij nawias okrągły dwukropek. Linia 2. lista kropka append otwórz nawias okrągły szukana zamknij nawias okrągły kratka dodanie wartownika na końcu listy. Linia 3. i znak równości 0. Linia 5. while lista otwórz nawias kwadratowy i zamknij nawias kwadratowy wykrzyknik znak równości szukana dwukropek. Linia 6. i plus znak równości 1. Linia 8. lista kropka pop otwórz nawias okrągły zamknij nawias okrągły kratka usunięcie wartownika. Linia 10. if i otwórz nawias ostrokątny len otwórz nawias okrągły lista zamknij nawias okrągły dwukropek. Linia 11. return i kratka znaleziono w oryginalnej liście. Linia 12. else dwukropek. Linia 13. return minus 1 kratka znaleziono tylko wartownika. Linia 16. kratka Przykład użycia. Linia 17. dane znak równości otwórz nawias kwadratowy 4 przecinek 7 przecinek 2 przecinek 9 przecinek 5 zamknij nawias kwadratowy. Linia 18. x znak równości 9. Linia 20. wynik znak równości wyszukiwanie podkreślnik z podkreślnik wartownikiem otwórz nawias okrągły dane przecinek x zamknij nawias okrągły. Linia 21. if wynik wykrzyknik znak równości minus 1 dwukropek. Linia 22. print otwórz nawias okrągły f cudzysłów Element otwórz nawias klamrowy x zamknij nawias klamrowy znaleziony na indeksie otwórz nawias klamrowy wynik zamknij nawias klamrowy cudzysłów zamknij nawias okrągły. Linia 23. else dwukropek. Linia 24. print otwórz nawias okrągły f cudzysłów Element otwórz nawias klamrowy x zamknij nawias klamrowy nie został znaleziony cudzysłów zamknij nawias okrągły.