Обход Бинарного дерева в глубину (preOrder, inOrder, postOrder)
————————————————
preOrder: В этом обходе мы сначала печатаем данные текущего узла, а затем сначала переходим к левому поддереву, а после этого переходим к правому поддереву.
————————————————
inOrder: В этом обходе мы сначала переходим к левому поддереву, а затем распечатываем данные узла. После печати данные узла переместятся в правое поддерево.
————————————————
postOrder: В этом обходе мы сначала переходим к левому поддереву, а затем переходим к правому поддереву. После перемещения распечатайте данные узла.
————————————————
preOrder: В этом обходе мы сначала печатаем данные текущего узла, а затем сначала переходим к левому поддереву, а после этого переходим к правому поддереву.
————————————————
inOrder: В этом обходе мы сначала переходим к левому поддереву, а затем распечатываем данные узла. После печати данные узла переместятся в правое поддерево.
————————————————
postOrder: В этом обходе мы сначала переходим к левому поддереву, а затем переходим к правому поддереву. После перемещения распечатайте данные узла.
❤1
Каррирование
Это преобразование функции с множеством аргументов в набор вложенных функций с одним аргументом. При вызове каррированной функции с передачей ей одного аргумента, она возвращает новую функцию, которая ожидает поступления следующего аргумента. Новые функции, ожидающие следующего аргумента, возвращаются при каждом вызове каррированной функции — до тех пор, пока функция не получит все необходимые ей аргументы. Ранее полученные аргументы, благодаря механизму замыканий, ждут того момента, когда функция получит всё, что ей нужно для выполнения вычислений. После получения последнего аргумента функция выполняет вычисления и возвращает результат.
Это преобразование функции с множеством аргументов в набор вложенных функций с одним аргументом. При вызове каррированной функции с передачей ей одного аргумента, она возвращает новую функцию, которая ожидает поступления следующего аргумента. Новые функции, ожидающие следующего аргумента, возвращаются при каждом вызове каррированной функции — до тех пор, пока функция не получит все необходимые ей аргументы. Ранее полученные аргументы, благодаря механизму замыканий, ждут того момента, когда функция получит всё, что ей нужно для выполнения вычислений. После получения последнего аргумента функция выполняет вычисления и возвращает результат.
WeakMap
Ключами могут быть только объекты. Не доступны некоторые методы в отличии от Мар (size). При удалении объекта – удалит его из памяти и такого ключа не будет. При удалении ключа – удаляется ссылка. Если использовали бы массив то при удалении, ссылка на него для других переменных после присваивания осталась бы.
Не поддерживает перебор
Ключами могут быть только объекты. Не доступны некоторые методы в отличии от Мар (size). При удалении объекта – удалит его из памяти и такого ключа не будет. При удалении ключа – удаляется ссылка. Если использовали бы массив то при удалении, ссылка на него для других переменных после присваивания осталась бы.
Не поддерживает перебор