я мечтаю найти в сети большой практикум по функциональному программированию. Пока не нашёл. Нужны СОТНИ задач и примеров - тема специфическая и востребованная, но пока никем не покрыта
Тимур, будь добр, расскажи доступно про Symbol, пожалуйста, с примерами. Часто спрашивают на собесах, но в реальных задачах юзкейсов у меня, например, нет за много времени и трудно въехать, что это, как и для чего оно действительно надо, в каких кейсах. Спасибо!
Тимур, я не знаю помнишь ты или нет, но я с тобой с 200-300 подписчиков, и хочу сказать, что качество контента заметно выросло, даже не в плане звука или видео, а в целом, раскрываемые темы, подача, обложки роликов, твой контент приятно смотреть, даже если тема, которую ты просвещаешь уже знакома, открывая каждый ролик я всегда знаю, что будет полезно. Думаю со мной многие согласятся, соотношение лайков/дизлайков на видео об этом говорит
Очень круто! Давай еще роликов по алгоритмам и задачкам с кодеворс не перестаю восхищаться твоими роликами! Подача просто Идеальная! для меня как минимум!
Ааа! Как вовремя! Я ещё не начала смотреть, но уже лайк и благодарность. Как раз готовлюсь к собеседованию. Пересмотрела раза 4 ролик по алгоритмам и структурам данных.. расстраивалась, что нет ещё на тему побольше практических. А тут такой подкат. Класс
@@UlbiTV Спасибо тебе. (Надеюсь, это не слишком фамильярно)) Ну что ж, не без твоей помощи в том числе, я прошла все собесы и получила работу. Обсуждается дата выхода. Тем временем, открываю папочку node js на твоём канале. Я давно не Джун, но есть темы, в которых плаваю. Ты делаешь классное дело. Особенно для тех, кто знает зачем и что ему нужно, и ищет способ быстро начать ориентироваться в теме, чтобы понимать куда и как копать дальше.
function fibonachi(n) { let resultArr = [0, 1]; let first = 0, second = 1; for (let i = 0; i < n; i++) { let next = first + second; first = second; second = next; resultArr.push(next) } console.log(resultArr); // [0, 1, 1, 2, 3, 5, 8, 13] } fibonachi(6)
Держите итеративный метод для Фибоначи без хардкода на первые значения: function fibonachi (n) { let prev = 1 let res = 0 for (let i = 0; i < n; i++) { let r = prev + res prev = res res = r } return res }
07:25 *Задача на понимание замыканий\колбеков* Это классическая задача на понимание функциональной парадигмы программирования. А именно композиции функций. *Решение автора видео является примером того как делать нельзя* Тем более нельзя такой код приводить как пример для других. *Пример решения близкий к оптимальному* { // _Создаем абстракцию нечто, которая знает только о себе_ const thing = ( t ) => t; // _Создаем абстракцию Тип Нечто, которая определяет логику поведения если она задана, или возврашает абстракцию thing_ const typeThing = ( ( t ) => ( a = thing ) => a( t ) ); // _Определяем абстракции для примитивных значений от 0 до 9_ const [ zero, one, two, three, four, five, six, seven, eight, nine ] = ( [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9] .map( typeThing ) ); // _Определяем абстракцию для операции сложения_ const plus = ( ( p1 ) => ( p2 ) => p1 + p2 ); // _Определяем абстракцию для операции вычитания_ const minus = ( ( p1 ) => ( p2 ) => p1 - p2 ); // _Пример композиции абстракций_ 4 + ( 5 - ( 2 + ( 3 ) ) ) console.log( four( plus( five( minus( two( plus( three( ) ) ) ) ) ) ) ); } *Автору видео домашнее задание* Во первых, научиться постоянно себе задавать вопрос - а правильно ли я делаю. Во вторых модифицировать код что выше так, чтобы абстракции для plus minus, которые сейчас имеют свое уникальное определение, стали частью цепочки создания для абстракций работающих с примитивными значениями.
@@leopold3146 Я абсолютно согласен с Вами в той части, где Вы ставите акцент на доступности материала для целевой группы. При этом, я хочу сделать важный акцент - я настаиваю на том, что в случае осваивания такой специальности как программирование, минимальный уровень (порог), который бы считался достаточным для программиста, был хотя-бы на том примитивном уровне, о котором заявляю я. Иначе говоря, я настаиваю на том, что преподавание материала уровнем ниже - это не только не достаточно для специальности, но и унижение человеческого достоинства. Такого мнения я придерживаюсь.
@@demimurych1 Не утрируйте! Большая часть кодинга вовсе не требует таких сложных логических механизмов, и изучающим любой язык надо с чего-то начинать. По-хорошему, этот пример из-за своей сложности вообще не должен был присутствовать в первом видео из серии, но автора канала, претендующего на звание образовательного для начинающих, постоянно заносит в излишне густые дебри функционального программирования.
Интересно, жду ещё! На замыкания/колбэки 7:25 была самая занимательная, подумал над ней минут 20, решил таким же способом, но у тебя намного лаконичнее вышло без TS и моего длинного нейминга переменных)
Отличное видео. Еженедельную рубрику давай, с задачками с CodeWars. Уверен, что плейлист будет популярен для джунов(вроде меня) да и просто любителей задачек. И вопрос по задачке, почему в 6-й не пройтись по ключам обьекта, ведь значений там будет меньше чем в проверяемом массиве?
Мое решение задачи на уникальные элементы массива. Причем оно ещё учитывает типы, то есть "5" и 5 - разные элементы const uniqArr = arr =>{ const hash = arr.reduce((acc, cur) => { acc.set(cur, (acc.get(cur) || 0) + 1) return acc }, new Map()) return Array.from(hash.keys()).filter(el => hash.get(el) == 1) }
Спасибо за видео и проделанную работу! Побольше таких видео с задачками делай, они полезны каждому программисту, как новичку так и нет для практики я считаю.
Огонь, то, что нужно, спасибо большое. Ещё было бы здорово, если бы было побольше практических задач. Например мне нужно было написать сегодня слайдер-свайпер для мобильных устройств. И там оказалось всё не так тривиально, как сразу можно подумать. Вот такие вот задачи и подобные ей на работу с нативным js и DOM были бы тоже очень интересны )
Задача с деревом через reduce и рекурсию) function treeSum(tree) { return tree.reduce((acc, node) => acc += node.c ? node.v + treeSum(node.c) : node.v, 0); }
Задачу Фибоначчи, в зависимости от ограничений, необходимо было решать с использованием мемоизации. Иначе, ваше рекурсивное решение сказало бы "пока" при N == 30+.
С периметром задача интересная, пришлось даже минут 40 потратить, часть из которых думал, как вообще посчитать этот периметр, даже на листке нарисовал разные варианты :) В решении сделал нормальную матрицу, заменив буквы O на нули для того, чтобы Boolean(0) возвращал false. function perimeter(matrix) { const grid = []; for (let i = 0; i < matrix.length; i++) { let current = []; for (let symbol of matrix[i]) { current.push( symbol === 'O' ? 0 : symbol ); } grid.push(current); }
const rows = grid.length; const cols = grid[0].length; let result = 0; function getPartialPerimeter(r, c, result) { if (grid[r][c] === 1) return 0; grid[r][c] = 1; result += grid[r - 1]?.[c] ? getPartialPerimeter(r - 1, c, 0) : 1; result += grid[r + 1]?.[c] ? getPartialPerimeter(r + 1, c, 0) : 1; result += grid[r][c - 1] ? getPartialPerimeter(r, c - 1, 0) : 1; result += grid[r][c + 1] ? getPartialPerimeter(r, c + 1, 0) : 1; return result; } for (let r = 0; r < rows; r++) { for (let c = 0; c < cols; c++) { if (grid[r][c] === 'X') { result += getPartialPerimeter(r, c, 0); } } } return result; } P.S. Нашел эту задачу на codewars (Land perimeter), но для нее решение пришлось чуть переделать, так как codewars не воспринимает опциональную цепочку ?. Поменял эти 3 строчки и название функции. result += grid[r - 1] && grid[r - 1][c] ? getPartialPerimeter(r - 1, c, 0) : 1; result += grid[r + 1] && grid[r + 1][c] ? getPartialPerimeter(r + 1, c, 0) : 1; return "Total land perimeter: " + result; // по условию надо возвращать строку
Формат видео офигенный! Продолжай подобное пилить) P.S.: Было бы интересно услышать разбор и реализацию алгоритма Дейкстры, а также второго алгоритма для отрицательных плеч.
вот такую задачку мне дали как тестовое задание, зачем то на реакте , сможешь решить => На входе: Взвешенный граф в виде JSON-файла (точки/ноды и соединения между ними с указанием веса) Интерфейс: Два селектора с указанием начальной и конечной точек маршрута На выходе: Список точек маршрута между начальной и конечной точками и общий вес маршрута.
Тимур, пора тебе понять, что твоим подписчикам любой формат заходит! ))) Лайк - это просто дефолтное поведение после выхода ролика)) Лично для себя жду следующие темы: - Подготовка к бэкэнд-собеседованию, по аналогии с уже имеющимся видео про фронт; - Двухфакторная авторизация с подтверждением по почте/телефону; - Аутентификация с помощью сторонних апи, типа гугла или фейсбука; - Оплата на сайте. И отдельная просьба как от жителя Украины: если что-то из этого будешь делать, то не используй, пожалуйста, Яндекс и Мэйл, у нас они под санкциями.
Вот вроде говоришь о сложности алгоритмов и забываешь упомянуть, что у такого рекуррентного нахождения числа фибоначчи оно экспоненциальное и так писать опасно для здоровья
Если будет хорошая активность, то сделаю видос с задачами посложнее :)
я мечтаю найти в сети большой практикум по функциональному программированию. Пока не нашёл. Нужны СОТНИ задач и примеров - тема специфическая и востребованная, но пока никем не покрыта
Лев
Тимур, будь добр, расскажи доступно про Symbol, пожалуйста, с примерами.
Часто спрашивают на собесах, но в реальных задачах юзкейсов у меня, например, нет за много времени и трудно въехать, что это, как и для чего оно действительно надо, в каких кейсах. Спасибо!
батя как всегда радует, спасибо за видос, можешь готовить уже посложнее ))
Хотелось бы увидеть сложные алгоритмы по типу шашек или авто выстраивания пазла по алгоритму дэйкстры)
О, долгожданный видос, лайк перед просмотром
Благодарочка ;)
Задачки с codewars - это куруто ! )
Согласен))
Тимур, я не знаю помнишь ты или нет, но я с тобой с 200-300 подписчиков, и хочу сказать, что качество контента заметно выросло, даже не в плане звука или видео, а в целом, раскрываемые темы, подача, обложки роликов, твой контент приятно смотреть, даже если тема, которую ты просвещаешь уже знакома, открывая каждый ролик я всегда знаю, что будет полезно. Думаю со мной многие согласятся, соотношение лайков/дизлайков на видео об этом говорит
Я всех «старичков» помню) тех, кто оставляет комментарии не так уж и много осталось :) спасибо! Стараюсь улучшать контент, рад, что замечаете)
Только сегодня задумался о CW, как там что и чего. Годный контент. Не глядя - жирный лайк !!!
Спасибо друг:)
Очень интересный формат ! Спасибо ! JavaScript,CodeWars.
Благодарю
Улыбка на лице возникает моментально , когда вы выкладываете новый видос!
А у меня улыбка от ваших комментариев ;)
Like! Больше инфы о алгоритмах и расчета их сложности пожалуйста)
Спасибо!
Ай как нужно такое! Плиз еще подобные видео! Автор - молодец!
Спасибо :)
Спасибо за все , что вы делаете для своих преданных зрителей !
Спасибо!)
Огонь! Спасибо за видео!
Очень круто! Давай еще роликов по алгоритмам и задачкам с кодеворс
не перестаю восхищаться твоими роликами! Подача просто Идеальная! для меня как минимум!
Стараюсь друг! Спасибо! Рад слышать!
Очень интересно, продолжай!
Спасибо огромное! Жду продолжение!
Супер. Давай больше подобных!
Спасибо за такие видосы! Очень полезно в обучении и закреплении!
Стараюсь )
Отличный формат) я только за ✊✊✊
Учту!)
Ааа! Как вовремя! Я ещё не начала смотреть, но уже лайк и благодарность. Как раз готовлюсь к собеседованию. Пересмотрела раза 4 ролик по алгоритмам и структурам данных.. расстраивалась, что нет ещё на тему побольше практических. А тут такой подкат. Класс
Спасибо! Успехов!)
@@UlbiTV Спасибо тебе. (Надеюсь, это не слишком фамильярно)) Ну что ж, не без твоей помощи в том числе, я прошла все собесы и получила работу. Обсуждается дата выхода. Тем временем, открываю папочку node js на твоём канале.
Я давно не Джун, но есть темы, в которых плаваю.
Ты делаешь классное дело. Особенно для тех, кто знает зачем и что ему нужно, и ищет способ быстро начать ориентироваться в теме, чтобы понимать куда и как копать дальше.
@@djailinvasu не представляешь, насколько я радуюсь, когда получаю подобные комментарии :) очень рад, успехов на новом месте работы!
Спасибо тебе за такой видос брат, нужно выводить в топ твои видосы✊🏽✊🏽
✊🏻✊🏻✊🏻
Это верно!
Огонь 🔥. Так держать.
Спасибо за видос! пили ещё видео, очень полезно!
Офигеть, такого материала почти не встретишь в ютубе :)
Как всегда качественно и без воды, спасибо
Спасибо!)
Спасибо, очень круто объясняешь, понял все сказанное. Ещё раз огромное спасибо, был бы рад подобным видео у тебя на канале
Спасибо друг:)
Развернутое объяснение каждой задачи, интересно слушать , вникать. Будет здорово увидеть продолжение 🔥
Всегда интересно посмотреть на решение задачи со стороны
Благодарю!
Спасибо за такие полезные видео. Хочется увидеть, что же там в задачах посложнее.
Очень понравился, спасибо мужик!
Благодарю;)
Спасибо большое! Очень интересно 😌
Спасибо огромное за контент👍
Хороший канал, очень помог мне! Лайк!
Спасибо!
Как всегда топовые видосы!!! Респект
Благодарю;)
Спасибо тебе, дальнейших успехов!
function fibonachi(n) {
let resultArr = [0, 1];
let first = 0, second = 1;
for (let i = 0; i < n; i++) {
let next = first + second;
first = second;
second = next;
resultArr.push(next)
}
console.log(resultArr); // [0, 1, 1, 2, 3, 5, 8, 13]
}
fibonachi(6)
Это самое крутое ) спасибо
✊🏻✊🏻
Супер!
Ролик хороший, жду продолжения! задачи это всегда круто, интересно смотреть как их решает кто то еще
Тимур, продолжай!! Любая практика поможет мне в трудоустройстве, я стараюсь каждый день по задаче решать
как успехи?)
Отличный видос, ждем еще
Супер, больше таких разборов. На отметке 11 мин там где минус необходимо тоже поменять местами( b - a) как и в делении.
Держите итеративный метод для Фибоначи без хардкода на первые значения:
function fibonachi (n) {
let prev = 1
let res = 0
for (let i = 0; i < n; i++) {
let r = prev + res
prev = res
res = r
}
return res
}
Завтра у меня собес в Яндексе на джуна, этап алгоритмы. Очень вовремя ты снял это видео!
Серьезное дело) успехов!
прошел?
как всегда на высоте
Спасибо, очень полезно
++активность для задач посложнее)
Проявляю активность)
отличный формат
Очень круто!
Спасибо!
Спасибо! Подача - кайф! Продолжай!
это лайк!
Отличный формат! Сам дальше 7kui пока не могу пробить
Спасибо огромное за видео. Ты очень помогаешь.
07:25 *Задача на понимание замыканий\колбеков*
Это классическая задача на понимание функциональной парадигмы программирования. А именно композиции функций.
*Решение автора видео является примером того как делать нельзя*
Тем более нельзя такой код приводить как пример для других.
*Пример решения близкий к оптимальному*
{
// _Создаем абстракцию нечто, которая знает только о себе_
const thing = ( t ) => t;
// _Создаем абстракцию Тип Нечто, которая определяет логику поведения если она задана, или возврашает абстракцию thing_
const typeThing = (
( t ) =>
( a = thing ) =>
a( t )
);
// _Определяем абстракции для примитивных значений от 0 до 9_
const [ zero, one, two, three, four, five, six, seven, eight, nine ] = (
[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
.map(
typeThing
)
);
// _Определяем абстракцию для операции сложения_
const plus = (
( p1 ) =>
( p2 ) =>
p1 + p2
);
// _Определяем абстракцию для операции вычитания_
const minus = (
( p1 ) =>
( p2 ) =>
p1 - p2
);
// _Пример композиции абстракций_ 4 + ( 5 - ( 2 + ( 3 ) ) )
console.log(
four(
plus(
five(
minus(
two(
plus(
three( )
)
)
)
)
)
)
);
}
*Автору видео домашнее задание*
Во первых, научиться постоянно себе задавать вопрос - а правильно ли я делаю.
Во вторых модифицировать код что выше так, чтобы абстракции для plus minus, которые сейчас имеют свое уникальное определение, стали частью цепочки создания для абстракций работающих с примитивными значениями.
Аудитория этого канала в подавляющем большинстве - только начинающие изучать программирование, им до таких высоких материй пока далеко
@@leopold3146 Я абсолютно согласен с Вами в той части, где Вы ставите акцент на доступности материала для целевой группы. При этом, я хочу сделать важный акцент - я настаиваю на том, что в случае осваивания такой специальности как программирование, минимальный уровень (порог), который бы считался достаточным для программиста, был хотя-бы на том примитивном уровне, о котором заявляю я.
Иначе говоря, я настаиваю на том, что преподавание материала уровнем ниже - это не только не достаточно для специальности, но и унижение человеческого достоинства.
Такого мнения я придерживаюсь.
@@demimurych1 Не утрируйте! Большая часть кодинга вовсе не требует таких сложных логических механизмов, и изучающим любой язык надо с чего-то начинать. По-хорошему, этот пример из-за своей сложности вообще не должен был присутствовать в первом видео из серии, но автора канала, претендующего на звание образовательного для начинающих, постоянно заносит в излишне густые дебри функционального программирования.
Интересно, жду ещё! На замыкания/колбэки 7:25 была самая занимательная, подумал над ней минут 20, решил таким же способом, но у тебя намного лаконичнее вышло без TS и моего длинного нейминга переменных)
Спасибо!) да, прикольная задачка)
Предельно полезное видео, из одной только задачи про замыкания узнал уйму полезной инфы, спасибо!!!
Спасибо дружище! Хороший ролик, что бы понимать как решать задачи на codewаrs!!! Успехов!!!
Ничего не понял НО очень интересно!
Круто,лайк и комент!!
Круто
Красавец!
Формат отличный!
Супер, дякую, благодарю ♥️
Тема интересная!!
Отличное видео. Еженедельную рубрику давай, с задачками с CodeWars. Уверен, что плейлист будет популярен для джунов(вроде меня) да и просто любителей задачек.
И вопрос по задачке, почему в 6-й не пройтись по ключам обьекта, ведь значений там будет меньше чем в проверяемом массиве?
Мое решение задачи на уникальные элементы массива. Причем оно ещё учитывает типы, то есть "5" и 5 - разные элементы
const uniqArr = arr =>{
const hash = arr.reduce((acc, cur) => {
acc.set(cur, (acc.get(cur) || 0) + 1)
return acc
}, new Map())
return Array.from(hash.keys()).filter(el => hash.get(el) == 1)
}
Спасибо за видео и проделанную работу!
Побольше таких видео с задачками делай, они полезны каждому программисту, как новичку так и нет для практики я считаю.
шикарный формат, можно ещё?)))
Огонь, то, что нужно, спасибо большое.
Ещё было бы здорово, если бы было побольше практических задач. Например мне нужно было написать сегодня слайдер-свайпер для мобильных устройств. И там оказалось всё не так тривиально, как сразу можно подумать. Вот такие вот задачи и подобные ей на работу с нативным js и DOM были бы тоже очень интересны )
Тоже постоянно вожусь с этим свайпером, но с каждым разом всё лучше получается)
Спасибо! Учту!
Интересно
Задача с деревом через reduce и рекурсию)
function treeSum(tree) {
return tree.reduce((acc, node) => acc += node.c ? node.v + treeSum(node.c) : node.v, 0);
}
Решил почти аналогично)✌️
function treeSum(tree) {
return tree.reduce((sum, { v, c }) => sum + v + (c ? treeSum(c) : 0), 0);
}
Задачу Фибоначчи, в зависимости от ограничений, необходимо было решать с использованием мемоизации. Иначе, ваше рекурсивное решение сказало бы "пока" при N == 30+.
С периметром задача интересная, пришлось даже минут 40 потратить, часть из которых думал, как вообще посчитать этот периметр, даже на листке нарисовал разные варианты :)
В решении сделал нормальную матрицу, заменив буквы O на нули для того, чтобы Boolean(0) возвращал false.
function perimeter(matrix) {
const grid = [];
for (let i = 0; i < matrix.length; i++) {
let current = [];
for (let symbol of matrix[i]) {
current.push( symbol === 'O' ? 0 : symbol );
}
grid.push(current);
}
const rows = grid.length;
const cols = grid[0].length;
let result = 0;
function getPartialPerimeter(r, c, result) {
if (grid[r][c] === 1) return 0;
grid[r][c] = 1;
result += grid[r - 1]?.[c] ? getPartialPerimeter(r - 1, c, 0) : 1;
result += grid[r + 1]?.[c] ? getPartialPerimeter(r + 1, c, 0) : 1;
result += grid[r][c - 1] ? getPartialPerimeter(r, c - 1, 0) : 1;
result += grid[r][c + 1] ? getPartialPerimeter(r, c + 1, 0) : 1;
return result;
}
for (let r = 0; r < rows; r++) {
for (let c = 0; c < cols; c++) {
if (grid[r][c] === 'X') {
result += getPartialPerimeter(r, c, 0);
}
}
}
return result;
}
P.S. Нашел эту задачу на codewars (Land perimeter), но для нее решение пришлось чуть переделать, так как codewars не воспринимает опциональную цепочку ?.
Поменял эти 3 строчки и название функции.
result += grid[r - 1] && grid[r - 1][c] ? getPartialPerimeter(r - 1, c, 0) : 1;
result += grid[r + 1] && grid[r + 1][c] ? getPartialPerimeter(r + 1, c, 0) : 1;
return "Total land perimeter: " + result; // по условию надо возвращать строку
Супер)))))))))) еще давай))))))
Топ! Ждём новые видосы с задачами!
Формат видео офигенный! Продолжай подобное пилить)
P.S.: Было бы интересно услышать разбор и реализацию алгоритма Дейкстры, а также второго алгоритма для отрицательных плеч.
Поскорее бы залететь попробовать) Постоянно смотрю твои видосы и наверное вот скоро влечу разок)
function fib(n) {
if (n < 1) {
return 0
}
if (n
наконец то годные видео 👍👍👍
люблю задачки )
Интересно было бы помотреть на 1-3 kata
Ждем подобные видосы по алгоритмам)) спасибо
Топово
Здравствуй Тимур, отличный контент, ГОДЕН, давай по сложнее)
*Л. а. й. к.*
Спасибо дружище!) жду твои комменты))
вот такую задачку мне дали как тестовое задание, зачем то на реакте , сможешь решить =>
На входе:
Взвешенный граф в виде JSON-файла (точки/ноды и соединения между ними с указанием веса)
Интерфейс:
Два селектора с указанием начальной и конечной точек маршрута
На выходе:
Список точек маршрута между начальной и конечной точками и общий вес маршрута.
это на позицию junior такая задача?
@@ДмитрийНормов-ю6ц да
Тимур, пора тебе понять, что твоим подписчикам любой формат заходит! ))) Лайк - это просто дефолтное поведение после выхода ролика)) Лично для себя жду следующие темы:
- Подготовка к бэкэнд-собеседованию, по аналогии с уже имеющимся видео про фронт;
- Двухфакторная авторизация с подтверждением по почте/телефону;
- Аутентификация с помощью сторонних апи, типа гугла или фейсбука;
- Оплата на сайте.
И отдельная просьба как от жителя Украины: если что-то из этого будешь делать, то не используй, пожалуйста, Яндекс и Мэйл, у нас они под санкциями.
Ой спасибо дружище) рад слышать) про авторизацию готовлю видео) с платежкой тоже будет, но попозже)
вот это реально очень надо ))
Спасибо!!
Сейчас бы Фибоначчи решать рекурсивно за 2^n, когда итеративный подход требует O(n)
было бы не плохо если бы ты говорил перед началом задачи какого ранга(kyu) данная задача
6-8 если не ошибаюсь, легкие задачки
@@UlbiTV Го сложнее. Слишком простые задачки.
@@ПавелЮлианов согласен
спасибо бро, как всегда великолепен!
офигеть совпадение, как раз на codewars решаю задачку 4kyu
успехов!
Если зависит только от Алмаса , Алмас разрешает продолжать)
👍👍😂😂
Сделай видео про jwt token и когда вызывать функцию refresh в React , а то в интернете ничего годного нет) Нравиться что делаешь, красавчик)
Bravo 🎉 impressive 😍 gratitude 🥳 for your satisfactory Work 💪🚀
Вот вроде говоришь о сложности алгоритмов и забываешь упомянуть, что у такого рекуррентного нахождения числа фибоначчи оно экспоненциальное и так писать опасно для здоровья
Согласен, стоило бы сказать
👍👍🔥
Интересные задачки, правда не представляю где их встретить можно.
Задачи не встретятся в реальных проектах, но благодаря им (задачам), ты научишься решать быстрее реальные проблемы.
davai!
Хоть 1 задача про Фибоначчи типо простая, но если заранее не знать алгоритм действий фиг допрешь до такой рекурсии
В планах есть идеи по видосу - "вопросы и ответы по собеседованию" ?
На канале есть подобное уже ;)