Алгоритм бинарного поиска. Binary search algorithm. Python

Sdílet
Vložit
  • čas přidán 30. 06. 2020
  • В этом видео мы познакомимся с алгоритмом бинарного(двоичного) поиска и реализуем его на языке Python.
    Ссылка на проект - github.com/kurtalex/Searching...
    #python #algorithms #алгоритмы
    GitHub - github.com/kurtalex

Komentáře • 26

  • @karandalliik
    @karandalliik Před 2 lety +5

    Все отлично, спокойно, подробно, по делу.
    Спасибо)
    Код можно чуть сократить, но это мелочи и дело каждого)

  • @user-wg4xw7yk8w
    @user-wg4xw7yk8w Před rokem +1

    Пасиба бро, помог разобраться !!)

  • @sergeyshestakov607
    @sergeyshestakov607 Před rokem

    спасибо, помогло

  • @towerhades
    @towerhades Před 5 měsíci

    от души, помог)

  • @spelld6347
    @spelld6347 Před 2 lety +1

    а как сделать тоже самое только со строками?

  • @theprogrammersway4228
    @theprogrammersway4228  Před 4 lety +3

    Уже после того, как выложил видео, заметил, что в коде есть небольшая ошибка:
    if guess == search_item:
    search_res = True
    -return search_res-
    После того как искомый элемент найден, можно не писать return search_res, потому что цикл while и так будет прерван, из-за того, что search_res == True
    На Github - github.com/kurtalex/SearchingAlgorithms
    Загрузил исправленный вариант!

  • @romanbush5164
    @romanbush5164 Před 2 lety +9

    спасибо, а то в грокаем алгоритмы одни ошибки... 🤣

    • @user-wk9dl9lu2t
      @user-wk9dl9lu2t Před 2 lety

      Это точно))) Делал по книге сначала, и думаю, как там делят на 2 и все у них получается😃

    • @user-wk9dl9lu2t
      @user-wk9dl9lu2t Před 2 lety

      Много там еще ошибок?😃 Только начал изучать книжку эту.

    • @яхочупитсы
      @яхочупитсы Před rokem +2

      @@user-wk9dl9lu2t там python 2.7, может поэтому?)

    • @user-vc8we3qc4p
      @user-vc8we3qc4p Před rokem +2

      @@user-wk9dl9lu2t там не оишбок много, а версия языка чуть стара, в книге используется 2.7 питон. В то время как сейчас используется 3.7 +

    • @user-wk9dl9lu2t
      @user-wk9dl9lu2t Před rokem

      @@user-vc8we3qc4p спасибо)

  • @user-ur3mc6hb5d
    @user-ur3mc6hb5d Před rokem +1

    Через рекурсию проще написать. Список размером 1 квадриллион спокойно хавает)

  • @user-gm8op6jb2m
    @user-gm8op6jb2m Před rokem

    А почему там "меньше или равно", а не просто "меньше" ?

  • @bwborispolbw7158
    @bwborispolbw7158 Před 2 lety

    а можно было написать не if result:
    а - if result == value:
    print("Элемент найден!")? . Если так нельзя , можете обьясниить почему)?

    • @fillplays8245
      @fillplays8245 Před rokem

      так result это же переменная типа bool, а value тип int

    • @Azimbek-iq1kl
      @Azimbek-iq1kl Před 9 měsíci

      Зачем страдать если можно тупо написать два слова вместо пятерых

  • @rbalabekyan1286
    @rbalabekyan1286 Před 4 lety +1

    high = len(array)-1 . почему -1?

    • @theprogrammersway4228
      @theprogrammersway4228  Před 4 lety +11

      Потому что переменная high это индекс последнего элемента массива, а функция len() возвращает длину строки и если не испосльзовать -1, то значение выййдет за границы массива, строки и т.п. Например у нас есть массив [1, 2, 3, 4, 5] функция len() вернёт количество элементов 5, но такого индекса (пять) не существует потому что индекс в языке Python начинается с 0 (нуля) и последний элемент имеет индекс 4. Именно поэтому чтобы получить доступ к последнему элементу массива high = len(array) - 1.

    • @rbalabekyan1286
      @rbalabekyan1286 Před 4 lety

      @@theprogrammersway4228 Thanks

  • @artembelsky680
    @artembelsky680 Před rokem

    В коде в месте где цикл While, оператор видео говорит ИЛИ, то есть(or), хотя как мы видим на экране там and, в инете точно также пишет and. Правильно ли это?
    I really like this presentation. Thanks a million!

  • @user-xq9zo5zx2e
    @user-xq9zo5zx2e Před rokem

    тем временем elem in lst

  • @Demidosel
    @Demidosel Před dnem

    1:25 - увеличичвайте в следующий раз маштаб, ничего не видно. Вы же видео в конце концов снимаете