Публикации по теме 'recursion'
Рекурсия, часть 1
Что такое рекурсия?
Рекурсия - это функция, которая вызывает себя до тех пор, пока не откликнется?
Хорошо, я слышу, но не понимаю, можешь показать мне код?
let countDown = num => {
console.log(num)
countDown(num - 1)
}
countDown(10)
Здесь происходит то, что вы пишете функцию ES6 с именем countDown, и мы передаем 10 в качестве параметра аргумента. Он напечатает 10, затем вызовет countDown, но с вычитанием числа на 1, что равно 9.
Вы видите, что должно произойти? Пройдемся..
Обход матрицы поиска "глубина / дыхание" в Python с интерактивным кодом [Назад к основам]
Алгоритмы поиска - идеальное место для начала, если вы хотите узнать больше об алгоритмах, а также об искусственном интеллекте. Итак, давайте начнем с основ Поиск сначала дыханием и Поиск в глубину для обхода матрицы.
Обратите внимание, что код не оптимизирован никаким другим методом. Это реализация методом грубой силы. Так что будьте осторожны.
Данная матрица / проблема
Красное поле → Где находится наш 1 (что мы хотим найти) Желтое поле → Место, с которого мы..
Уменьшение сокращения: рекурсия и ES6
Проблем с кодированием и веб-сайтов предостаточно, и мне нравится решать новые проблемы, но иногда интересно настроить или улучшить старые игрушечные проблемы и придумать альтернативные творческие решения. Особенно здорово, если вы можете сделать это с еще меньшим количеством кода. Один из способов, которым я люблю бросать себе вызов, — это решать задачи с помощью рекурсии, не всегда потому, что это лучше, а просто потому, что мне нравится рекурсия. Это может привести к трудностям, потому..
Способы использования метода сокращения в Javascript
До недавнего времени я знал только, как использовать сокращение для его наиболее распространенной цели - суммирования всех элементов в массиве. Я знал, что он способен на большее, но погрузился в его многочисленные применения только тогда, когда начал готовиться к техническим собеседованиям.
Стоит разобраться в тонкостях его использования не только для суммирования значений, но и для сглаживания массивов, суммирования значений в массиве объектов и даже обратного преобразования строки...
Реализуйте Array.filter с рекурсией
Мой последний пост касался рекурсивного Array.map . Хотя это хороший учебный ресурс, я не рекомендую никому использовать его в своих приложениях.
То же самое касается рекурсивной реализации Array.filter .
Вместо этой (упрощенной) традиционной версии:
filter = (predicate, arr) => {
const filteredArray = [];
for (let i = 0; i < arr.length; i++) {
let currentItem = arr[i];
if (predicate(currentItem)) {
filteredArray.push(currentItem);..