// Алгоритмизация #6 // Двоичное дерево //

Поділитися
Вставка
  • Опубліковано 16 жов 2024
  • tree: github.com/Num...

КОМЕНТАРІ • 15

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

    Вы, в отличие от многих, очень понятно объясняете. Спасибо вам!

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

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

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

    И не проверил рабоатет ли интри и прочее всё прекрасно, но можно было в конце больше внимания тестингу всего?

  • @ВикторЛаптев-ю4в
    @ВикторЛаптев-ю4в 2 роки тому

    Классное видео! Спасибо. Сижу, разбираю, что написано. При удалении узла с двумя дочерними элементами (когда мы идем сначала вправо, а потом в лево до конца), нужно обратить внимание, есть ли у этого конечного левого элемента правый потомок. Если его не приписать к родителю левого крайнего элемента, он потеряется.
    И если нет крайнего левого элемента совсем (то есть ptr = node->right), то если у этого ptr будут другие правые потомки, они тоже потеряются.

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

      Хм, верное замечание. Сейчас как раз удаление пишу и ваше земечание требует обдумывания... А может ли справа может быть не только 1 элемент, а даже последовательность? (если не сбалансировано дерево?)
      Значит нужно еще в таком случае связать элементы "внизу", а потом вверху уже.

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

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

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

    А удалить не по число а по стрингу выходит нельзя?

  • @ФункцияГрина
    @ФункцияГрина 4 роки тому +1

    У меня вопрос, почему к интерфейсным функциям применен модификатор extern ? Это сделано, чтобы не писать .h файл? Не понимаю.

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

      В данном случае это применино просто для наглядности, как разграничение между static и extern функциями. Определённо это никак не влияет на компиляцию, потому что функции без модификатора по-умолчанию представляют собой extern функции.

    • @ФункцияГрина
      @ФункцияГрина 4 роки тому

      @@CryptoFunIT спасибо, Вас понял.

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

    Объясните пожалуйста, для чего перед struct (или union) используют typedef, ведь если просто определить структуру, она уже будет являться типом, для чего нужно объявление синонима?

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

      @veruyushiy ateist Это не нужно делать. Когда мы делаем struct str1 { ... }; то потом мы можем просто сделать str1 var2; безо всяких typedef. И ничего каждый раз писать не надо. Вопрос остается открытым.

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

      Без typedef ты не сможешь записать так, как ты сказал, слово struct при объявлении переменной тут ключевое

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

      Обычно пишут typedef struct{…}str; , где str - имя структуры

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

    Алгоритмизация Двоичное дерево Алгоритмизация Двоичное дерево Алгоритмизация Двоичное дерево