Бинарное дерево. Полное понимание! Динамические структуры данных #3

Поділитися
Вставка
  • Опубліковано 29 сер 2024
  • Однонаправленныйсписок #1
    goo.gl/JbKZgi
    Двунаправленный список#2
    goo.gl/j6A6HJ
    ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅
    Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
    🔴🔴🔴 www.donationale...
    или тут
    🔴🔴🔴 / simplecode
    ✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅✅
    Уроки по программированию
    Наша группа ВК smplcode
    Подписывайтесь на канал / @simplecodeit

КОМЕНТАРІ • 173

  • @SimpleCodeIT
    @SimpleCodeIT  6 років тому +133

    *Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)*

    • @zaramar8250
      @zaramar8250 6 років тому +2

      Ждем программной реализации)

    • @musaxudiyev7754
      @musaxudiyev7754 4 роки тому

      Спасибо большое за такие уроки!

    • @user-bx8kz9lo8o
      @user-bx8kz9lo8o 2 роки тому

      Какие минусы бинарного дерева?

  • @user-sh5ku6hz7f
    @user-sh5ku6hz7f 5 років тому +44

    вот бы сделать отдельный стрим по дереву с подробным объяснением , было бы очень полезно начинающим, и еще я бы хотел разобраться как балансировку делать)))Спасибо большое за труды, Сергей))

  • @IT-es9yl
    @IT-es9yl Рік тому +3

    Читал несколько методических пособий, но смысл и преимущества бинарного дерева дошли до меня только после просмотра данного видеоурока. Спасибо!

  • @user-nz3ig3wv5j
    @user-nz3ig3wv5j 4 роки тому +20

    Большое спасибо за Ваш труд! Вы делаете нас умнее)

  • @Kobzarko
    @Kobzarko 5 років тому +20

    Большое спасибо за ваш труд! Очень нужно реализация бинарного дерева в вашем исполнении!

  • @phello57
    @phello57 Рік тому +4

    Огромное спасибо от моей нервной системы за наглядную визуализацию проговариваемых слов в фотошопе. Все три видео на одном дыхании

  • @IrinaBod
    @IrinaBod 24 дні тому

    Спасибо большое!!! Сейчас я на курсах в школе программирования и как раз тема бинарных деревьев! Ваше видео поможет!

  • @gevorgpirenyan3530
    @gevorgpirenyan3530 20 днів тому

    Очень хорошо объяснено. Спасибо большое!

  • @IIIA_KO
    @IIIA_KO 2 роки тому +3

    Единственный канал где понятно объясняется программирование

  • @dimasavukov6230
    @dimasavukov6230 5 років тому +5

    Сергей !!! спасибо за видео !!! У Вас талант -- объяснять не необъяснимые вещи !!!!!

  • @antonpashkevich5061
    @antonpashkevich5061 3 роки тому +3

    Красавчик :3
    Как легко и понятно объясняешь

  • @NikolayForostiy
    @NikolayForostiy 5 років тому +1

    До этого я и не знал зачем нужны бинарные деревья спасибо, что пояснил!

  • @andrews_lerk
    @andrews_lerk 4 роки тому +4

    Просто максимально полезный поток информации))
    Спасибо!! Однозначно лайк, подписка!)

  • @MatamuneDT
    @MatamuneDT 2 роки тому +1

    Большое спасибо.
    Очень наглядно просто и понятно объяснили!

  • @pashudzu
    @pashudzu 4 місяці тому

    Очень понятное объяснение, спасибо, респект автору🎉

  • @martinsnarogs7530
    @martinsnarogs7530 4 роки тому +7

    Кому интересно, вот реализация бинарного дерева
    #include
    #include
    using namespace std;
    struct Tree
    {
    Tree *left;
    Tree *right;
    int num;
    Tree(int n = 0, Tree* l = nullptr, Tree* r = nullptr) :num(n), left(l), right(r) {} // Конструктор принимает данные, и указатель на левый и правый элемент, по умолчанию инициализируя их нулями. Далее конструктор передает эти значения дальше через двоеточие
    };
    class BTree
    {
    Tree *root;
    public:
    BTree() {
    root = nullptr;
    }
    ~BTree()
    {
    Tree *temp = root;
    int rootValue = root->num;
    Tree *previous = root;
    while (temp != nullptr && rootValue == temp->num ) {
    if (root->left==nullptr && root->right==nullptr)
    {
    if (previous->left != nullptr && previous->left->num == root->num)
    {
    previous->left = nullptr;
    }
    else if (previous->right !=nullptr && previous->right->num == root->num)
    {
    previous->right = nullptr;
    }
    delete root;
    root = temp;
    }
    else if (root->left != nullptr && root->left->num < root->num)
    {
    previous = root;
    root = root->left;
    }
    else
    {
    previous = root;
    root = root->right;
    }}}
    void add(Tree *&t, int n) {
    if (t == nullptr) {
    t = new Tree(n);
    }
    else {
    if (n < t->num) {
    //cout left, n);
    }
    else {
    add(t->right, n);
    //cout left);
    cout num right);
    }
    //else cout

    • @mikekras7646
      @mikekras7646 3 роки тому

      Скажи что делает функция inorder?

    • @user-yn7gi6os8d
      @user-yn7gi6os8d 3 роки тому

      Подтолкнул на правильную мысль. Реализовал чуть иначе, но принцип тот же. Спасибо

  • @SimpleCodeIT
    @SimpleCodeIT  6 років тому +11

    #бинарноедерево #динамическиеструктурыданных #SimpleCode #урокипрограммирования

  • @gadjik_youtube
    @gadjik_youtube Рік тому

    спасибо , стало понятно ! смотрел обход дерева на другом канале , там не уточняли , что бинарное дерево заполняется по правилам, было не понятно для чего оно вообще нужно !

  • @vladalu9794
    @vladalu9794 6 років тому +14

    Большое спасибо за урок, вот бы еще реализацию увидеть)))

  • @user-ij3hx7qp4i
    @user-ij3hx7qp4i 3 роки тому +3

    Прекрасное изложение материала. Спасибо!

  • @Ermine882
    @Ermine882 6 років тому +7

    Спасибо за урок.

  • @daniilk4994
    @daniilk4994 Рік тому +1

    Еще б немного математики сюда)
    Расчет сложности поиска элемента например…
    Где-нибудь в конце, чтоб не пугать большинство)

  • @HerrHoldem
    @HerrHoldem 6 років тому +6

    Очень крутые и полезные видео, спасибо!

  • @ayxanzeynalov5483
    @ayxanzeynalov5483 Рік тому +1

    Отличное видео , именно у вас всегда всё понятно. Очень жаль что видео больше не появляются,я бы поддержал канал финансово если б мог (

  • @nata4518
    @nata4518 3 місяці тому

    Спасибо большое!

  • @akupreychuk6893
    @akupreychuk6893 8 місяців тому

    благодарю, максимально понятное объяснение

  • @WEBSTART-LIVE
    @WEBSTART-LIVE 3 роки тому

    Коротко и ёмко! Пока пил кофе, разобрался в том, что другие по часу жуют в своих видео и не могут донести

  • @georgyshilin7721
    @georgyshilin7721 4 роки тому +2

    Спасибо, очень доступно объясняете

  • @MrCraick0
    @MrCraick0 4 роки тому +6

    Вы ошиблись по поводу словоря в c#. У него под капотом не дерево, а хэш таблица и доступ по ключу у хэш таблицы всегда o(1). А у бинарного дерева в среднем о(lgn) и в худщем o(N), если мы почитаем документацию по словарю увидим, что чтение из словаря в c# занимает o(1)

  • @user-pg1ed3jw1p
    @user-pg1ed3jw1p 4 роки тому +2

    Настолько подробно объяснил , что мне аж интересно стало откуда ты брал инфу били же сам составлял текст для объяснений ?

  • @user-rm3ed2lq9d
    @user-rm3ed2lq9d 3 роки тому

    Эх, помню писал бинарный поиск. Хорошая практика!
    public int BinarySearch(int[] arr, int _item)
    {
    int _low = 0; //первый элемент массива для пойска
    int _high = arr.Length - 1; //последний элемент массива для пойска
    while (_low _item) // если много
    {
    _high = _mid - 1; // идем к найменьшему элементу
    }
    else // если мало
    {
    _low = _mid + 1; // идем к найбольшему элементу
    }
    }
    return 0; // если элемент не найдент, то возвращаем 0
    }

  • @KurpatovInstagram
    @KurpatovInstagram 6 років тому +3

    Cпасибо!

  • @C2H5OHH
    @C2H5OHH 2 роки тому +1

    Спасибо за урок!

  • @nomilious8093
    @nomilious8093 3 роки тому +1

    Спасибо за вашу работу!!)

  • @ivansherbinin2735
    @ivansherbinin2735 6 років тому +4

    Спасибо за урок

  • @SM-uv1rr
    @SM-uv1rr 4 роки тому +1

    Отличное объяснение. Спасибо.

  • @user-rc2vh9iy6i
    @user-rc2vh9iy6i 4 роки тому +1

    Очень подробно и доходчиво, спасибо!

  • @evgenykonovalov4870
    @evgenykonovalov4870 3 роки тому

    Топ! выучил плюса на ютубе! ты бог

  • @overdoses1794
    @overdoses1794 6 років тому +8

    спасибо!

  • @hedgehoginthefog3896
    @hedgehoginthefog3896 6 років тому +14

    Доброго времени суток! Спасибо за качественные уроки! В одном из первых ваших видео Вы говорили, что также планируете делать уроки по C#. Хотелось бы узнать когда их ждать?

    • @ouma45
      @ouma45 2 роки тому +1

      Пора

    • @lizenox
      @lizenox 2 роки тому +1

      рора

    • @gedemin7420
      @gedemin7420 2 роки тому

      Бро, 3 года начались уроки по c#, бужу тебя, вдруг ты пропустил

  • @feewre
    @feewre 5 років тому +4

    Удаление узла из бинарного дерева поиска. Не благодарите
    Нерекурсивная реализация
    Для удаления узла из бинарного дерева поиска нужно рассмотреть три возможные ситуации. Если у узла нет дочерних узлов, то у его родителя нужно просто заменить указатель на null. Если у узла есть только один дочерний узел, то нужно создать новую связь между родителем удаляемого узла и его дочерним узлом. Наконец, если у узла два дочерних узла, то нужно найти следующий за ним элемент (у этого элемента не будет левого потомка), его правого потомка подвесить на место найденного элемента, а удаляемый узел заменить найденным узлом. Таким образом, свойство бинарного дерева поиска не будет нарушено. Данная реализация удаления не увеличивает высоту дерева.
    Рекурсивная реализация
    При рекурсивном удалении узла из бинарного дерева нужно рассмотреть три случая: удаляемый элемент находится в левом поддереве текущего поддерева, удаляемый элемент находится в правом поддереве или удаляемый элемент находится в корне. В двух первых случаях нужно рекурсивно удалить элемент из нужного поддерева. Если удаляемый элемент находится в корне текущего поддерева и имеет два дочерних узла, то нужно заменить его минимальным элементом из правого поддерева и рекурсивно удалить этот минимальный элемент из правого поддерева. Иначе, если удаляемый элемент имеет один дочерний узел, нужно заменить его потомком

    • @sorokousov
      @sorokousov 3 роки тому

      Это самая интересная часть)

  • @user-mn2po8ns2z
    @user-mn2po8ns2z 3 роки тому +1

    Очень круто!

  • @ImVarlamov
    @ImVarlamov 4 місяці тому

    Благодарю!

  • @user-nx5gg7ys7f
    @user-nx5gg7ys7f 10 місяців тому

    Спасибо)

  • @hollowflk
    @hollowflk Рік тому

    Просто и понятно😄

  • @andrewv8140
    @andrewv8140 6 років тому +8

    А что если на вход подается ряд значений, уже отсортированный по возрастанию/убыванию, все элементы будут уходить каждый раз в правую/левую ветку? Как тогда быть с идеально сбалансированными бинарными деревьями?

    • @o_o2291
      @o_o2291 3 роки тому

      Можно сделать проверку на количество символов, разделить на 2 и брать корнем элемент под данным индексом

  • @aliakseikatsar5815
    @aliakseikatsar5815 2 роки тому

    Огромное спасибо!

  • @user-ct9oj1es2t
    @user-ct9oj1es2t 5 років тому +1

    6:23 На самом деле очень даже можем . если создадим в двусвязном списке ссылку на средний элемент тогда то сможем отталкиваться от него и двигаться либо в сторону начала , или в сторону конца(как вариант))

    • @ramazanisaev46
      @ramazanisaev46 5 років тому

      можно еще , используя размер и индекс .

  • @NofaceAndrew
    @NofaceAndrew 3 місяці тому +1

    Разве мапы и ассоциативные массивы не используют хэш-таблицы и хэш-сеты?

  • @brenkovd
    @brenkovd 3 роки тому

    Сижу я такой смотрю про двусвязные списки и димаю , а почему бы не организовать структуру .. ( и такой в голове придумываю нечто похожее на бинарное дерево) . Открываю следующее видео и .. а ну да , точно)) Кстати эти все структуры данных описаны в книге Дональда Кнута 1 том, но как хорошо описаны я не знаю так как без математической подготовки я просто пока - что открываю книгу и просто нюхаю))) Но там описание не привязано к конкретному языку программирования , так что очень полезно

  • @tesohi
    @tesohi 5 місяців тому

    огрооооомное спасибо

  • @pandalove6795
    @pandalove6795 4 роки тому +1

    Еще круто что слева находиться минимальное число, а справа максимальное

  • @Denis-rv5kg
    @Denis-rv5kg 2 роки тому

    Спасибо!

  • @alexandrsargsyan2202
    @alexandrsargsyan2202 2 роки тому

    bratan ogromnoe spasibo ))

  • @nikitun85
    @nikitun85 Рік тому

    7:00 вот тут было бы неплохо, может быть, забежать вперед и рассказать, как в такое дерево добавлялось бы, например, число 2. Когда есть узел со значением 1 и из него уже выходит дочерний узел со значением 30. Это можно сделать, не переписывая дерево?

    • @unukhtv7196
      @unukhtv7196 Рік тому +1

      так двойка просто запишется с левой части от 30

  • @borisshalabanov4620
    @borisshalabanov4620 6 років тому +43

    Спасибо, а будет урок по реализации дерева?)

    • @mishalavik4595
      @mishalavik4595 3 роки тому +14

      public class BinaryTree
      {
      public int Value;
      public BinaryTree Left;
      public BinaryTree Right;
      public BinaryTree(int value)
      {
      Value = value;
      }
      public void Add(int value)
      {
      if (value < Value)
      {
      if (Left == null)
      Left = new BinaryTree(value);
      else Left.Add(value);
      }
      else
      {
      if (Right == null)
      Right = new BinaryTree(value);
      else Right.Add(value);
      }
      }
      }
      // Как-то так, дальше сам додумывай

    • @bocik2854
      @bocik2854 3 роки тому

      @@mishalavik4595 Спасибо!!!))

    • @quadroninja2708
      @quadroninja2708 3 роки тому

      Вроде же рассказали

    • @vladsn.2119
      @vladsn.2119 2 роки тому

      @@mishalavik4595 Рекурсивная реализация?

  • @user-tr6mf1ps5n
    @user-tr6mf1ps5n 3 роки тому

    крутая вещь, это бинарное дерево

  • @artemivanov2141
    @artemivanov2141 6 років тому +41

    Это вы объясняете про бинарное дерево поиска, в просто бинарном дереве данные не упорядочены

    • @delalen8012
      @delalen8012 4 роки тому +1

      Это точно так? Уверены?

    • @Dungeon_masster228
      @Dungeon_masster228 4 роки тому +3

      Насколько я понял по механике бинарного дерева, оно просто не может быть неупорядоченным, т.к. упорядочение происходит прямо в процессе создания бинарного дерева

    • @bogotoff
      @bogotoff 4 роки тому +11

      ​@@Dungeon_masster228 Бинарное дерево может быть не упорядоченным. Более того, в дереве могут быть не только числа, но и объекты любого типа.
      Главное условие бинарного дерева - каждый узел содержит не более двух потомков. Не более. А упорядочивание, балансирование(см. красно-черные деревья) это разновидность обычного бинарного дерева

    • @user-sy1kp8ld5o
      @user-sy1kp8ld5o 4 роки тому +1

      @@bogotoff Тимур прав

    • @logionthecreator864
      @logionthecreator864 4 роки тому

      смотри, ты можешь делать его неупорядоченным, если будешь рандомно класть элементы в дерево, но если ты создашь какой либо принцип вставки элемента в дерево(ну в основном как в видео), то ты сможешь быстро складывать элементы в дерево и быстро вынимать, что по должно быть само собой разумеющееся , иначе это трата ресурсов (ну рандомно кидать элементы) , которое ни к чему не приводит( брать элементы хз как)

  • @immickful
    @immickful 2 роки тому

    Для того, чтобы формально была понятна разница м/у связанными списками и бин. деревьями надо бы указывать сложности для тех и других. А так, это "лучше и быстрее" плохо осязаемо же.

    • @Tyr4noBuba
      @Tyr4noBuba 2 роки тому

      Все и так понятно..

  • @user-kf5bl1ny3m
    @user-kf5bl1ny3m 6 років тому +1

    Сергей, спасибо за урок! Есть в планах делать уроки по формам и оконным приложениям в Visual Studio?

  • @smrsgv
    @smrsgv 6 років тому

    великолепно!

  • @BloodVesselTM
    @BloodVesselTM 4 роки тому

    Продвигаем в топы

  • @user-uj8bq7go3t
    @user-uj8bq7go3t 6 років тому +3

    было бы хорошо если б вы привели пример ипользования бинарного дерева, так как к примеру если добавлять данные по мере роста или убыванию их значения, тогда получится тот же односвязный список

    • @SimpleCodeIT
      @SimpleCodeIT  6 років тому +1

      Примет скоро будет в уроках по STL.

    • @MsT0mahawk
      @MsT0mahawk 2 роки тому

      Все правильно. И скорость поиска в таком случае будет одинаковая (по сравнению с односвязанным списком). К сожалению не раскрыта тема балансировки и удаления.

  • @bigdnotation
    @bigdnotation 2 роки тому

    Спасибо

  • @andrey6552
    @andrey6552 2 роки тому

    Спасибо :)

  • @user-mt6wt9vc1x
    @user-mt6wt9vc1x 3 місяці тому

    Нужно уточнение, что это бинарное дерево поиска :D

  • @vladislavjukov5764
    @vladislavjukov5764 2 роки тому +2

    Спасибо за урок! Но есть вопрос) А как дерево поведет себя при вставке одинаковых чисел (дубликатов)?

    • @inf888
      @inf888 2 роки тому

      В таком случае можно сделать счетчик повторяющихся элементов, но вообще со стандартной реализацией повторяющиеся элементы в большинстве случаев будут попадать правее от себе подобного числа (но в теории могут быть и под ними, то есть изначально зайти в правую ветку от него, но потом свернуть влево), которое добавлялось раньше

  • @Mike-hp3fh
    @Mike-hp3fh 4 роки тому +2

    6:15 >> Поиск по индексу будет проходить очень медленно, и нам никак не обойти ...
    Можно обойти - нужно хранить в узле дерева количество всех дочерних узлов.

  • @gsh137
    @gsh137 2 роки тому +1

    это конечно замечательно, но жаль не рассказано как добавлять, если это какое то промежуточное значение (47 например)

    • @fiendgrin
      @fiendgrin 7 місяців тому

      оно будет с правой стороны 46, нет никаких промежуточных значений

  • @user-mc7kc2bd8b
    @user-mc7kc2bd8b 2 роки тому

    спасибо

  • @user-ck1vp7fp9l
    @user-ck1vp7fp9l 2 роки тому

    Здравствуйте а для python бинарное дерево также создается?

  • @jangiryanarsen4952
    @jangiryanarsen4952 6 років тому

    Продолжайте C++ и его теорию

  • @bandirdana-1144
    @bandirdana-1144 2 роки тому +1

    А почему 50

  • @pigsel2509
    @pigsel2509 2 роки тому

    СПАСИБО)) Можно реализацию на с++?

  • @AdCoder
    @AdCoder 6 років тому

    Вопрос: на работе программисту обязательно знать наизусть что и как писать код , чтобы решить ту или иную задачу ? Ну допустим он понимает как это работает и у него есть под рукой готовый для решения данной задачи код ... его же работодатель за это никак занижать не будет ?

    • @Igor_Morozov
      @Igor_Morozov 6 років тому +3

      GameStudio Вы искренно верите, что работодатель будет ковыряются в вашем коде? ))) А в общем, для этого и существуют либы, паттерны, ну и копипаст ). Просто без понимания вы не сможете их применить и будете изобретать велосипед. А изобретательство велосипедов оно такое. Часто даже затягивает, как правило во вред результату. )

  • @AShahabov
    @AShahabov 4 роки тому

    Сделайте такое же видео по "Би-дерево".

  • @adiletastana2781
    @adiletastana2781 5 років тому +1

    А как быть с удалением данных из дерева? Надеюсь будет дополнение к видео

    • @justr4390
      @justr4390 5 років тому +1

      Дерево будет сортироваться заново

  • @timur2887
    @timur2887 2 роки тому

    А как происходит построение дерева?

  • @r_lonef
    @r_lonef Рік тому +1

    який же кайф коли музики на фоні нема, не відволікає увагу, дякую!

  • @ANTONY-vk3pu
    @ANTONY-vk3pu 2 роки тому

    А можно реализацию на c#?

  • @gromitwoll6907
    @gromitwoll6907 3 роки тому

    Что делать если список начинается с единицы ?

  • @rasrabotchik
    @rasrabotchik Рік тому

    для чего оно нужно?

  • @user-bx8kz9lo8o
    @user-bx8kz9lo8o 2 роки тому

    Какие минусы бинарного дерева?

  • @user-pd4md3xr3i
    @user-pd4md3xr3i 4 роки тому +1

    Ничего не сказано о минусах. Вначале заявили, а потом ничего не сказали.

  • @user-gi2nb1jg2v
    @user-gi2nb1jg2v 3 роки тому +1

    Дикшенери в шарпе - не дерево, а хэш таблица, если не ошибаюсью

  • @user-yj3mi9em7y
    @user-yj3mi9em7y 5 років тому

    крутое видео

  • @user-nw7eb3rb9y
    @user-nw7eb3rb9y 4 роки тому

    А как происходит удаление элементов?

  • @kaynsolo
    @kaynsolo 6 років тому +1

    Like!

  • @axentfly8945
    @axentfly8945 5 років тому +2

    А если в примере к головному числу 50 добавить 50, то что??

    • @KiberDoktoR
      @KiberDoktoR 3 роки тому

      Зависит от реализации. В эталоне - элемент не вставляется как в множестве (сете).
      Либо вставляется слева как в мультисете.

    • @trixion74
      @trixion74 2 роки тому

      @@KiberDoktoR а что на счет добавления в места, которые уже заняты (к примеру, если попробовать добавить число 52 на моменте 7:25 , то что-то не складывается)

  • @bossmusa9075
    @bossmusa9075 4 роки тому

    и когда юзать бинарное дерево, а когда список?

  • @ilyasabutalibli8086
    @ilyasabutalibli8086 2 роки тому

    у меня вопрос : мы же можем под 49 слева указать 30 также

    • @fiendgrin
      @fiendgrin 7 місяців тому

      нет не можем 30 меньше 45

  • @alexantro1946
    @alexantro1946 2 роки тому

    чел помог

  • @hecfi9461
    @hecfi9461 3 роки тому

    Понятное о непонятном.

  • @nika7149
    @nika7149 2 роки тому

    А если в корне - 50, а оба последующих числа - меньше 50ти?

    • @melonystalker3714
      @melonystalker3714 2 роки тому

      Будет перекос в одну сторону

  • @pelevin_idi_nahui
    @pelevin_idi_nahui 4 роки тому

    Привет от учеников 21й школы !

  • @user-wb5wj6ib6y
    @user-wb5wj6ib6y Рік тому

    Жаль ничего не сказано о ситуации, когда место для значения, которое хотелось бы хранить в дереве - занято

  • @user-pd4gt9zz9c
    @user-pd4gt9zz9c 6 років тому +1

    а если добавить номер 50, к примеру, с которого уже началось дерево?... а с удалением как дела обстоят?

    • @axentfly8945
      @axentfly8945 5 років тому

      Сам думал на эту тему. Оказалось просто, при реализации дерева можно прописывать условия типа >= или = число 50 попадет вправо, а если

    • @user-gy5lg4vp9i
      @user-gy5lg4vp9i 4 роки тому

      @@axentfly8945 я видал делали так:
      < в левую часть
      > в правую часть
      == игнорировали число

  • @-vd2gk
    @-vd2gk Рік тому

    А если число повторяется?

    • @Kalin_cheetah
      @Kalin_cheetah Рік тому +1

      В бинарном дереве все числа-ключи уникальны

  • @mlpython1089
    @mlpython1089 2 роки тому

    Т.е. это аналогия дерева решений в машинном обучении.

  • @Mike-hp3fh
    @Mike-hp3fh 4 роки тому

    9:33 Бинарный поиск в связном списке? Это возможно?

    • @aznaurataev9497
      @aznaurataev9497 4 роки тому

      Это возможно в любой отсортированной коллекции.

    • @Mike-hp3fh
      @Mike-hp3fh 4 роки тому

      @@aznaurataev9497 только если возможно получить элемент по индексу за время O(1)

    • @aznaurataev9497
      @aznaurataev9497 4 роки тому

      @@Mike-hp3fh в плюсах бинарный поиск - это функция работающая с итераторами, ей все равно за сколько есть возможность получить Эл-т, если она есть. Другое дело если мы говорим о её скорости работы. Но факт есть факт и бин поиск на листе запустить можно.