Algorytmy - Wyszukiwanie binarne (Teoria + implementacja) [Python]

Поделиться
HTML-код
  • Опубликовано: 1 авг 2021
  • Wsparcie kanału - patronite.pl/KoW
    Zapraszam do subskrybowania mojego kanału:
    ruclips.net/user/KodeksOn...
    Cały kurs Algorytmy - • Algorytmy - Sortowanie...
    Zapraszam również do innych moich kursów:
    Python - • 1. Kurs Python 3 - wst...
    Java - • 1. Kurs Java dla począ...
    Kotlin - • 1. Kurs Kotlin - Wstęp...
    C# - • 0. Kurs C# dla początk...
    C++ - • 1. Kurs C++ dla począt...
    C - • 1. Kurs języka C - Wst...
    HTML & CSS - • 1. Kurs HTML & CSS - W...
    PHP - • 1. Kurs PHP - Wstęp: H...
    JavaScript - • 1. Kurs JavaScript - W...
    SQL - • 1. Kurs SQL - Łączenie...
    Arduino - • 1. Kurs Arduino - Diod...
    Scratch - • 1. Kurs Scratch - Prog...
    Blender - • 1. Kurs Blender - Wstę...
    AutoCAD - • 1. Kurs AutoCAD 2020 -...
    PyCharm - www.jetbrains.com/pycharm/
    Python (instalacja) - www.python.org/

Комментарии • 16

  • @piotrekbak9627
    @piotrekbak9627 3 месяца назад

    Lubie ten kanał. Fajnie, super i co najważniejsze rzetelnie wytłumaczone. Licze na więcej

  • @jacek1366
    @jacek1366 Год назад +1

    Dziękuję!

  • @wojtek1895
    @wojtek1895 2 года назад

    było super!!! wszystko jasne bardzo

  • @adamczarny6482
    @adamczarny6482 2 года назад

    spoko

  • @piotrekbak9627
    @piotrekbak9627 22 дня назад

    ja mam pytanie. w linii czwartej przed pętlą wyliczasz średnią. czy to jest konieczne, czy można wyliczyć tylko średnią w środku pętli?

  • @kamilwisniewski1080
    @kamilwisniewski1080 2 года назад

    nie trzeba robić pętli, wystarczy zrobić tak (w języku c++):
    int binarySearch(int *arr, int l, int r, int tofind) {
    if (l > r) return -1;
    int mid = floor((l+r)/2);
    if (tofind == *(arr+mid)) return mid;
    else if (tofind < *(arr+mid)) return binarySearch(arr, l, mid-1, tofind);
    else if (tofind > *(arr+mid)) return binarySearch(arr, mid+1, r, tofind);
    }

  • @capitanprice2912
    @capitanprice2912 3 года назад

    Czy to jest odpowiednik funkcji IndexOf w C# ?

    • @KoW
      @KoW  3 года назад

      Nie wiem jaka tam jest dokładnie implementacja wyszukiwania, ale tam zwracany jest index 1 napotkanej liczby więc trochę było by trzeba zmodyfikować ten algorytm. No i tam tablica nie musi być uporządkowana. Trzeba by sprawdzić.

  • @Zuubiik
    @Zuubiik 3 года назад

    Co jeśli wartości będą się powtarzać i chciałbym znać indeks każdej z nich?

    • @KoW
      @KoW  3 года назад

      Nie było tego w materiałach które przerabiałem, ale też się nad tym zastanawiałem, co jeżeli chciał bym np. index 1 wartości z powtarzających się. I tak jak sobie myślę, to w sumie lekka modyfikacja tej funkcji by wystarczyła, bo po znalezieniu tej właściwej liczby wystarczy dekrementować index, jeżeli po lewej stronie od wyszukanej stoi ta sama liczba i tak samo z inkrementacją i w ten sposób jesteś w stanie zrobić np. Index początku i końca. Czyli lekka modyfikacja funkcji.

    • @Zuubiik
      @Zuubiik 3 года назад

      @@KoW biorąc pod uwagę że tablice są posortowane, można wywoływać funkcje tak długo jak wynik różny od -1 oczywiście zawsze z nową parą wskaźników.

  • @mranimek8909
    @mranimek8909 3 года назад

    heja

  • @KoW
    @KoW  3 года назад +7

    Nie za dużo tych filmików?