Задачи На Собеседовании Junior / Middle Frontend Developer. Массивы в JavaScript.

Разбираем задачи которые часто спрашивают на собеседовании Junior и Middle Frontend Developer. В этом ролике решаем часто задаваемые задачи по массивам в JavaScript. Разбираем разные способы решения задач + некоторые фишки в JavaScript. Напишите в комментариях какие еще вопросы вам задавали на Frontend собеседованиях и как вы с ними справились!
Таймкоды:
00:00 - Сумма элементов массива. №1.
00:51 - Сумма элементов массива. №2.
01:36 - Сумма элементов массива. №3.
02:12 - Максимальный / минимальный элемент массива. №1.
03:10 - Максимальный / минимальный элемент массива. Вариации первого способа.
03:50 - Максимальный / минимальный элемент массива. №2.
04:20 - Максимальный / минимальный элемент массива. №3.
04:46 - Максимальный / минимальный элемент массива. №4.
05:32 - Сортировка массива.
06:52 - Сортировка массива с объектами по их полям (по алфавиту и по возрастанию).
09:50 - Развернуть массив без .reverse().
11:29 -💡Сможешь понять этот код?
12:10 - Отфильтровать falsy значения
Приятного просмотра! Буду благодарен за поддержку в виде комментария и лайка!
👉 Исходный код, чат, воркшопы и поддержка канала: / wisejs
✔️ Если хочешь изучать программирование со мной, не забудь подписаться :)
kzread.info/dron/Oxq.html...
✔️ Мой телеграм канал: t.me/joinchat/RVq-cmt6n1SJRS7Z
#собесесдованиеjavascript #собеседованиеfrontend #массивы #javascript #frontend #array #juniorjavascript #middlejavascript #вопросынасобеседовании

Пікірлер: 183

  • @wisejs
    @wisejs2 жыл бұрын

    Домашнее задание: Найти дубликаты (повторяющиеся элементы) в массиве. Решение присылайте в комментарии 👇

  • @imthebest8000

    @imthebest8000

    2 жыл бұрын

    uniqueNumbers = new Set(array)

  • @9mikaela

    @9mikaela

    2 жыл бұрын

    @@imthebest8000 это не найдёт дубликаты

  • @imthebest8000

    @imthebest8000

    2 жыл бұрын

    @@9mikaela да, я просто не правильно прочёл задание

  • @eugenedoroshenko7366

    @eugenedoroshenko7366

    2 жыл бұрын

    Для числового массива: arrayWithDublicates.sort((x1, x2) => x1 - x2).reduce((acc, next, index, arr) => next === arr[index + 1] ? [...acc, next] : acc, []). Для других типов данных меняем сортировку, которая была подробно рассмотрена в ролике👆

  • @ArtyomSamsonchik

    @ArtyomSamsonchik

    Жыл бұрын

    array.filter( (el, i) => i !== array.lastIndexOf(el) )

  • @romanpohribniak8471
    @romanpohribniak84712 жыл бұрын

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

  • @user-xe7sp3pr7t
    @user-xe7sp3pr7t2 жыл бұрын

    Как раз прохожу собесы сейчас. То, что нужно как раз👌 . Спасибо 😉

  • @konstantin-lysenko
    @konstantin-lysenko2 жыл бұрын

    Дружище, ты просто машина, я бы сказал - живой калькулятор) Подписка и лайк однозначно!

  • @samolevich
    @samolevich Жыл бұрын

    Классное видео. Интересные примеры. Спасибо

  • @slapiinf518
    @slapiinf5182 жыл бұрын

    Классный видосик. Гоу теперь про объекты :)

  • @cult2839
    @cult2839 Жыл бұрын

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

  • @user-jl8kc2xi5g

    @user-jl8kc2xi5g

    6 күн бұрын

    покажика эти сложные задачи)попробую их на зубок чтоб отскакивала как таблица умножения

  • @Veremey
    @Veremey2 жыл бұрын

    Great job 🔥 Keep on going!

  • @mykhailostepanishchev6472
    @mykhailostepanishchev64722 жыл бұрын

    Классный выпуск,большое спасибо! js, reduce, map, filter, sort, pop.

  • @wisejs

    @wisejs

    2 жыл бұрын

    Спасибо за ключевые слова!

  • @GrandAlexandr
    @GrandAlexandr2 жыл бұрын

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

  • @assetdev1859
    @assetdev1859 Жыл бұрын

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

  • @dmitriystoyanov933
    @dmitriystoyanov9332 жыл бұрын

    Сейчас готовлюсь к собесам на новую работу, ставил на паузу и решил всё, НО некоторые твои варианты взорвали мозг) реально круто!

  • @Yupitrer

    @Yupitrer

    Жыл бұрын

    Как новая работа?

  • @dmitriystoyanov933

    @dmitriystoyanov933

    Жыл бұрын

    @@Yupitrerда жестко бывает т.к. компания небольшая и должность размыта.. я типа фронтенд, но так же и бекенд писать приходится, и на AWS колупаться постоянно.. такое..но, бабки платят и хорошо;)

  • @adamarturov6361

    @adamarturov6361

    Жыл бұрын

    Какие задачи по алгоритмам пригодились для собеса ?

  • @dmitriystoyanov933

    @dmitriystoyanov933

    Жыл бұрын

    @@adamarturov6361 это год назад уже было, не помню, но может быть что угодно из них.

  • @robbyandreasian
    @robbyandreasian Жыл бұрын

    Полезно ! спасибо !

  • @user-mh2fz7tx3j
    @user-mh2fz7tx3j2 жыл бұрын

    Класс! Сделай еще задачки с циклами))

  • @wisejs

    @wisejs

    2 жыл бұрын

    Хорошая идея)

  • @max_mgtow
    @max_mgtow2 жыл бұрын

    Привет ✌️ Спасибо 🔥👍

  • @kitaimanit6000
    @kitaimanit6000 Жыл бұрын

    спасибо, контент огонь

  • @ArtcticUFO
    @ArtcticUFO Жыл бұрын

    Отличный видос)

  • @dmaberlin
    @dmaberlin2 жыл бұрын

    спасибо , продолжай!

  • @theoty-js-react
    @theoty-js-react2 жыл бұрын

    👌 буду решать

  • @mxrquez7692
    @mxrquez7692 Жыл бұрын

    Для разворачивания массива можно воспользоваться методом массива reduceRight, который работает как обычный, но итерируется с конца массива const reversedArray = array.reduceRight((accum, elem) => { accum.push(elem); return accum; }, []);

  • @SuperPirks

    @SuperPirks

    Жыл бұрын

    array.reduceRight((acc, item) => { return [ ...acc, item ] }, []) Пушить в аккумулятор плохая практика

  • @BOCbMOU

    @BOCbMOU

    Жыл бұрын

    @@SuperPirks в каком месте это плохая практика? Вот клонировать массив на каждой итерации - это действительно плохая практика.

  • @vjachet

    @vjachet

    Жыл бұрын

    ​@@SuperPirks лучше acc.concat(item)

  • @haibova_irisha
    @haibova_irisha11 ай бұрын

    привет . спасибо за видео

  • @andreykrav3274
    @andreykrav32742 жыл бұрын

    it's most popular information! thanks

  • @valeriathor1597
    @valeriathor1597 Жыл бұрын

    12:00: вторым аргументом назначаем this = наш array. первым аргументом, т.е. в качестве вызываемого колбэка передаем метод массива pop(), который внутри обращается к this т.е. к массиву, у которого вызывается. если я правильно поняла, когда что-то передается в качестве аргумента оно теряет контекст, потому что это вроде как эквивалентно присвоению переменной. поэтому нам нужно передать контекст вторым аргументом

  • @raff_m_d6971
    @raff_m_d6971 Жыл бұрын

    От души

  • @user-yj4ln8mi6b
    @user-yj4ln8mi6b2 жыл бұрын

    Делюсь опытом, была задача на собеседовании написать функцию для проверки слова на палиндром, там работа и с массивом, и с строкой. Кто не знает, что это такое и как ее решать, советую глянуть.

  • @zizu2499

    @zizu2499

    9 ай бұрын

    А где найти видео не смог найти видео с решением задачи

  • @user-on4di6lb3j

    @user-on4di6lb3j

    7 ай бұрын

    А чего там решать? Слово в массив, массив развернуть и склеить в слово, результат сравнить с первоначальный словом. Можно с циклом заморочится или рекурсией. Для зарядки ума.

  • @user-yv4ou3jl8y
    @user-yv4ou3jl8y2 жыл бұрын

    Привет, найти самое редковстречающееся значение в числовом массиве, или сгенерировать n массив, заполненный рандомными числами от min до max)

  • @wisejs

    @wisejs

    2 жыл бұрын

    Тоже попадалось с рандомными числами

  • @loadmore
    @loadmore2 жыл бұрын

    Обычно в продакшене готовые апи юзаешь, Бек уже все отфильтровал )

  • @volshebniyfonar
    @volshebniyfonar Жыл бұрын

    Перевернуть массив можно и нужно за O(n) и без доппамяти. Нужно в цикле от 0 до length/2 менять местами i-ый элемент с length - 1 - i

  • @thecatwrites9731
    @thecatwrites97312 жыл бұрын

    прикольный канал, не помню откуда я тебя взял

  • @wisejs

    @wisejs

    2 жыл бұрын

    🧐

  • @denmccormik7654
    @denmccormik76542 жыл бұрын

    Дз: создать объект где ключом будут значения элементов массива, а значением - количество их повторений и в зависимости от задачи перебрать объект.

  • @wisejs

    @wisejs

    2 жыл бұрын

    Все так, но вместо объекта лучше Map 😆

  • @mathiaswei8715
    @mathiaswei87152 жыл бұрын

    Спасибо, array.filter(item => item) тоже сработает

  • @lambdius
    @lambdius2 жыл бұрын

    В версиях node до 12, можно обмануть систему, т.к. сорт на малых объемах массива использует сортировку слиянием, мы можем произвести следующиее, a.sort(e=>1), еденицу можно заменить на любое положительное число, оно будет выполнять роль положительного резульятата сравнения элементов слева на право. Если уж идти по тропе шизокода, стоит писать все в круглых скобках, дабы избавиться от ключевых слов, методы вызывать следующим образом - a=[3,4,5,1,2,6], [j,o,i,n]=`join`, eval(a[j+o+i+n]`+`) и многое другое ))))) И решение - a.map(a.pop,[...a]), взято из задачи 3 kyu на CW ))))) У тебя хороший контент по технологиям, но задачки, это совсем другое, все тонкости JS врядли выйдет разобрать, да это и не нужно обычным людям. Ставлю этому видику 7kyu ))))

  • @wisejs

    @wisejs

    2 жыл бұрын

    Интересно 🧐

  • @lambdius

    @lambdius

    2 жыл бұрын

    @@wisejs Если человек хочет впечатлить собеседующего, рекомендую провести тутор - как писать код столбиком, по 1 символу в строке ))))

  • @wisejs

    @wisejs

    2 жыл бұрын

    @@lambdius 😂

  • @notIdeal78
    @notIdeal785 ай бұрын

    09:50 const arrow = [1,2,3,4,5,6,7,9,12] console.log(arrow.sort(() => {return -1})); тоже идеально будет работать

  • @klash1401

    @klash1401

    4 ай бұрын

    отлично решение, вот его упрощенная запись (без return и фигурных скобок): arrow.sort(() => -1)

  • @senyashtyak
    @senyashtyak9 ай бұрын

    Найти максимальный элемент массива через сортировку это гениально

  • @LuNa-om8ci

    @LuNa-om8ci

    4 ай бұрын

    Это был сарказм? Просто я новичок и немогу пока точно понять хорошо это или плохо.

  • @senyashtyak

    @senyashtyak

    3 ай бұрын

    @@LuNa-om8ci объясню проще: вместо линейной сложности мы используем квадратичную

  • @asifabbasov3801
    @asifabbasov380110 ай бұрын

    Можно больше задач по JS c собеседований

  • @whiteguards43
    @whiteguards43 Жыл бұрын

    не понял про array.filter(boolean) почему работает? Если весь массив передается, почему он возвращает все те что тру ведь boolean === true равно фолс

  • @velikorossnationalist4259
    @velikorossnationalist4259 Жыл бұрын

    В предпоследней задаче можно было бы воспользоваться методом sort: const arr = [1, 2, 3, 4, 5, 6, 88]; const reversed = arr.sort((a, b) => { return b - a; }); console.log(reversed);

  • @PlaymoreDev

    @PlaymoreDev

    Жыл бұрын

    не можно, потому что задача развернуть а не отсортировать. вот с таким массивом не будет работать верно: const arr = [1, 22, 3, 4, 5, 6, 88]

  • @getshou
    @getshou2 ай бұрын

    а почему, если не использовать деструктуризацию в выражении array.map(array.pop, array), вернет [6,6,5,4,,,] ?

  • @BobbyBob21
    @BobbyBob214 ай бұрын

    За eval по рукам надо бить))

  • @granmini
    @granmini2 жыл бұрын

    Есть еще функция Есть еще функция getMaxOfArray ([1, 2, 3])

  • @kirushaa
    @kirushaa2 жыл бұрын

    Привет ) Скажи пожалуйста что за шрифт у тебя в web-storm ? Заранее спасибо )

  • @wisejs

    @wisejs

    2 жыл бұрын

    Дефолтный, не менял

  • @kirushaa

    @kirushaa

    2 жыл бұрын

    @@wisejs спасибо )

  • @user-zd6yk9pi1y

    @user-zd6yk9pi1y

    2 жыл бұрын

    jetbrains mono

  • @user-sy7cn6vc1m
    @user-sy7cn6vc1m4 ай бұрын

    лайк за localeCompare

  • @Max_Ineos
    @Max_Ineos10 ай бұрын

    Решение второй задачи, зачем мудрить?)) const max = Math.max(...array); const min = Math.min(...array);

  • @yuriiyurii6656
    @yuriiyurii66562 жыл бұрын

    map(callbackFn, thisArg) Array(array.length).fill(null).map([].pop, [...array]); де: Array(array.length).fill(null) - масив будь-яких значень аналогічної довжини [].pop - потрібна сама функція [...array] - масив, з якого на кожному кроці буде забиратися останнє значення. Якщо без ... (деструктиризації), тоді очистить попередній масив array

  • @vjachet

    @vjachet

    Жыл бұрын

    array.map([].pop, [...array])

  • @Shperung
    @Shperung8 ай бұрын

    const max = arr.toSorted((a, b) => b - a)[0];

  • @andrTaylor
    @andrTaylor Жыл бұрын

    Альтернатива для reverse) array.reduceRight((acc, item) => [...acc, item], []) Это когда лень писать for с обратным циклом))

  • @SerzhNesteruk

    @SerzhNesteruk

    3 ай бұрын

    Спасибо, что поделились решением! Способ вполне работающий, но у него всё же квадратичная сложность по времени из-за пепесоздания массива на каждой итерации. Можно переписать примерно так: array.reduceRight((acc, item) => (acc.push(item), acc), []) ...или даже решить через map: array.map((_, i, arr) => arr.at(~i))

  • @andrTaylor

    @andrTaylor

    3 ай бұрын

    @@SerzhNesteruk с первым вашим решением согласен, да, но второе читается сложновато)) заставляет залезть в доку и чекнуть инфу про тильду и at

  • @lolphdundgren4328
    @lolphdundgren4328 Жыл бұрын

    8:38 ошибка в строке 23, в if-е должен стоять ===.

  • @Witcher-simple-YouTube
    @Witcher-simple-YouTube8 ай бұрын

    Это websrorm ?

  • @JohnDoe-hw1sm
    @JohnDoe-hw1sm2 жыл бұрын

    Касательно варианта с разворотом массива, можно еще воспользоваться reduceRight. =) arr.reduceRight((p, c) => [...p, c], []);

  • @hyannikolas697
    @hyannikolas6972 жыл бұрын

    Задача. Есть четыре массива по 4 цифры, цифры разбросаны, найти максимальное число , и вывести новый массив максимальных чисел.

  • @wisejs

    @wisejs

    2 жыл бұрын

    Сводится к поиску максимального числа в матрице (насколько я понимаю)

  • @pasha2927
    @pasha29272 жыл бұрын

    Домашнее задание: Можно использовать new Set... [...new Set(someArray)]

  • @wisejs

    @wisejs

    2 жыл бұрын

    Не убрать их, а найти :)

  • @user-ni4oh6rs3e
    @user-ni4oh6rs3e Жыл бұрын

    В последней задаче зачем в иф делать !! если все что в условии и так приведется в бул значение

  • @user-jf3uf2ur4e
    @user-jf3uf2ur4e18 күн бұрын

    eval это прикол конечно, думаю лучше так не делать на собеседовании 😅

  • @b1sh855
    @b1sh8558 ай бұрын

    const arrey = [1, 2, 3, 4] const xw = arrey.reduce((x, y) => x + y); console.log(xw) это по короче

  • @user-sz7pu7qj3z
    @user-sz7pu7qj3z2 жыл бұрын

    Стосовно розвертання масиву через map(array.pop, array) функція видаляє останній елемент масиву і повертає його, який в свою чергу записується в результат функції map. А в якості this для метода pop передається array, який скорочується.

  • @user-rj6ro3mp1p
    @user-rj6ro3mp1p2 жыл бұрын

    Стало интересно и пошел разбираться. С некоторым успехом вроде что-то вышло.😁 Для данной записи: [...ourArr].map(array.pop, ourArr) - array.pop - это мы просто передаем метод массива, аналогично и этой записи: [].pop Метод array.pop удаляет последний элемент массива и возвращает его. Второй агрумент "ourArr" для метода map нужен для того, чтобы именно было что возвращать в новый массив, который создает метод map. Значение для нового элемента массива возвращается на каждой итерации из ourArr, который мы передали для метода [].pop в качестве this. Новый массив [...ourArr] нужен только для того, чтобы было по чему нам итерироваться. Будет аналогично и работать так же для записи: [undefined, undefined, undefined, undefined, undefined].map(array.pop, ourArray) Кажется, что я только запутал.😂

  • @wisejs

    @wisejs

    2 жыл бұрын

    Ход мыслей верный 🙂

  • @user-rj6ro3mp1p

    @user-rj6ro3mp1p

    2 жыл бұрын

    @@wisejs Ну и хорошо значит.😁

  • @Kaorichvagon

    @Kaorichvagon

    2 жыл бұрын

    Array.from( new Array(arr.length) , () => arr.pop() ) в пустой массив той же длины накидываются попнутые значения. Так это выглядит в читаемой реализации, хотя всё равно способ идиотский, так как происходит мутация исходного массива. Еще при этом зачем-то усложнил получением ссылки на метод массива и прокинутым в неё this. Любителей всё усложнять везде же любят)

  • @SerzhNesteruk

    @SerzhNesteruk

    3 ай бұрын

    ​@@Kaorichvagon Здесь, кстати, тоже можно поумничать с Array.prototype.pop и thisArg, но хотя бы сохранив иммутабельность исходного массива: Array.from(arr, [].pop, [...arr]) А учитывая, что вторым аргументом Array.from является mapFn, то можно просто использовать сам метод map: arr.map([].pop, [...arr]) Но можно решить и рациональнее: arr.map((_, i, arr) => arr.at(~i))

  • @senyashtyak
    @senyashtyak9 ай бұрын

    Никто не пишет вручную алгоритмы, вместо этого используют lodash, в котором они реализованы

  • @oldiBerezkoo
    @oldiBerezkoo4 ай бұрын

    3:11 через sort было бы легче и быстрее сделать как мне кажется

  • @Goddamn_Right

    @Goddamn_Right

    2 ай бұрын

    4:19

  • @kittycat5403
    @kittycat54032 жыл бұрын

    а разве нельзя развернуть массив тем же методом sort, только возвращать x2 - x1 вместо x1 - x2?

  • @kittycat5403

    @kittycat5403

    2 жыл бұрын

    и в filter просто использовать сам текущий item без boolean

  • @wisejs

    @wisejs

    2 жыл бұрын

    x2 - x1 - отсортирует по убыванию

  • @wisejs

    @wisejs

    2 жыл бұрын

    да, так можно, но не особо очевидно как по мне

  • @user-vu6hn4ul2i

    @user-vu6hn4ul2i

    Жыл бұрын

    Нет, нельзя. Если массив изначально не сортирован, то такой "разворот" вернёт сортированный.

  • @kosmodemyan_sugar
    @kosmodemyan_sugar9 ай бұрын

    ну не знаю не знаю, мне и на джуна задачи сложнее попадались

  • @phat80
    @phat8018 күн бұрын

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

  • @user-yh6jq7iz2u
    @user-yh6jq7iz2u11 ай бұрын

    каким каким оператором? тренарным? 😂 может тернарным?

  • @GagikHarutyunyan_dev
    @GagikHarutyunyan_dev2 жыл бұрын

    Последний пример мутирует предыдущий массив, это плохо)

  • @wisejs

    @wisejs

    2 жыл бұрын

    Последний пример какой задачи?

  • @GagikHarutyunyan_dev

    @GagikHarutyunyan_dev

    2 жыл бұрын

    Развернуть массив

  • @wisejs

    @wisejs

    2 жыл бұрын

    не всегда плохо, зависит от требований

  • @vjachet

    @vjachet

    Жыл бұрын

    @@wisejs но сначала-то все примеры без мутации что мешало array.map([].pop, [...array]) ? если мутировать оригинальный массив - надо было и с двумя указателями дать пример

  • @dogfrogfog
    @dogfrogfog2 жыл бұрын

    тернарным, а не тренарным

  • @azizoid
    @azizoid2 жыл бұрын

    просили найти второе и третье максимальное значение массива перебрав его всего один раз

  • @wisejs

    @wisejs

    2 жыл бұрын

    Как решали? Сортировкой?

  • @azizoid

    @azizoid

    2 жыл бұрын

    @@wisejs сортировкой делать было нельзя. Поэтому прошелся обычным for-ом. Но и это их не устроило. Сказали мой алгоритм слишком затратный. Это было тюлет 3 назад

  • @wisejs

    @wisejs

    2 жыл бұрын

    @@azizoid O(n2 если 2 раза перебирал. Хотели, наверное, быстрее.

  • @plart2006

    @plart2006

    2 жыл бұрын

    @@wisejs простой сортировкой эту задачу не решить, потому что могут быть дубликаты, придется set еще городить, это не рационально upd: зато читабельно, и чаще всего на фронте глубоко пофиг, сколько займет операция с массивом - 3мс или 10мс, а вот разбираться с кодом из кучи циклов нахрен никому не упало

  • @plart2006

    @plart2006

    2 жыл бұрын

    let max = -Infinity, second = -Infinity, third = -Infinity for (const value of arr) { if (value > max) { [second, max] = [max, value] // save previous max } else if (value second) { second = value // new second biggest third = second // new third biggest } else if (value third) { third = value // new third biggest } } return [second, third]

  • @deantek
    @deantek Жыл бұрын

    а нельзя в максимальном или минимальном элементе массива сделать так? const arr = [3, 2, 4, 5, 1] const min = arr.sort()[0] const max = arr.sort()[arr.length - 1]

  • @user-ui1fe2bd9w

    @user-ui1fe2bd9w

    Жыл бұрын

    да кнчн

  • @kindaart7451

    @kindaart7451

    Жыл бұрын

    Если в массиве будет 100, то max у Вас будет равна 5, что будет ошибкой.

  • @chinzano
    @chinzano2 жыл бұрын

    Вопросы на уровне стажёра, на Джуна уж посложнее задачи спрашивают, как минимум, средний уровень с leetcode

  • @wisejs

    @wisejs

    2 жыл бұрын

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

  • @n0rison
    @n0rison9 ай бұрын

    ну middle вряд ли

  • @user-tb3mm6dl3z
    @user-tb3mm6dl3z Жыл бұрын

    Почему этот парень не моргает а я сразу не понял че не так🤔

  • @user-mn3ic2ct8d
    @user-mn3ic2ct8d2 жыл бұрын

    Сделать плоский массив, нельзя использовать flat

  • @pinkiseven659

    @pinkiseven659

    2 жыл бұрын

    А также нельзя использовать рекурсию

  • @wisejs

    @wisejs

    2 жыл бұрын

    А так же, нельзя использовать массив 😆

  • @pinkiseven659

    @pinkiseven659

    2 жыл бұрын

    @@wisejs будет тогда сложно

  • @ruslantsarenko3036
    @ruslantsarenko30362 жыл бұрын

    Сомнительно чтобы давали настолько простые задачи на собесе

  • @plart2006

    @plart2006

    2 жыл бұрын

    Если просят крутить деревья, лучше сразу уйти. Потом такие особи крутят тебе мозги

  • @McNeelone

    @McNeelone

    2 жыл бұрын

    @@plart2006 по подробней можно?

  • @KrivovNikolay

    @KrivovNikolay

    Жыл бұрын

    @@McNeelone я думаю он имел ввиду работу с DOM элементами , если сразу просят работать с ними ,то лучше сразу покинуть собеседование... Я так его понял

  • @Snezh88k

    @Snezh88k

    Жыл бұрын

    @@KrivovNikolay бинарные деревья поиска

  • @user-vu6hn4ul2i

    @user-vu6hn4ul2i

    Жыл бұрын

    @@plart2006 ну такой себе совет. Если ты умеешь крутить деревья, то почему бы и не покрутить? Если не умеешь, то да, можно сразу уходить: у тебя и у компании разные взгляды на то, что ты должен знать и уметь на той позиции, куда тебя собеседуют. И консенсус вряд-ли получится.

  • @user-xn2cr5oe4p
    @user-xn2cr5oe4p11 ай бұрын

    Почему ты таким устаревшим циклом пользуешься? И ещё вводишь в заблуждение новичков! А также тут многие пишут что таких задач нет на собесах! Зря потерянное время …

  • @plart2006
    @plart20062 жыл бұрын

    Чаще задвигают всякую теоретическую хрень типа прототипов и принципов ооп. Как говорится, особый js для собесов, который в реальной работе никогда не используется

  • @wisejs

    @wisejs

    2 жыл бұрын

    Принципы ООП не связаны с js и их у любого программиста могут спросить

  • @alexandroppolus
    @alexandroppolus2 жыл бұрын

    Искать максимум в массиве через сортировку - это дичь. Хуже неё только последний способ Math.max(...arr), приводящий к переполнению стека на длинном массиве. Автор, не учи джунов всякому плохому )

  • @carry-on-chaos4032

    @carry-on-chaos4032

    Жыл бұрын

    а как правильно? я делал через reduce

  • @alexandroppolus

    @alexandroppolus

    Жыл бұрын

    @@carry-on-chaos4032 через reduce вполне норм. Ну или обычным циклом.

  • @pkorneev5226
    @pkorneev522611 ай бұрын

    junior еще бы поверил для первой легкой задачки на собеседовании, но точно не мидл, это уровень интерна, не более

  • @user-ms5vu1zp9d
    @user-ms5vu1zp9d Жыл бұрын

    На собесе такое не просят решать. Это детсадовские задачи.

  • @benchik100

    @benchik100

    Жыл бұрын

    😵😵😵 не лишайте меня мотивации.

  • @oleksandr_h
    @oleksandr_h2 жыл бұрын

    const A = [1, 2, 3, 4, 5, 2, 1]; console.log([...new Set(A.filter((a) => A.length - A.filter((f) => f != a).length > 1))]);

  • @DreamMaster_ru
    @DreamMaster_ru10 ай бұрын

    array.reduce((acc:number, next:number) - Почему у меня аккумуляторы не работают? Все примеры из видео с аккумулятормаи у меня не пашут. Хотя reduce вот так работает: const array = [1, 2, 2, 4, 5, 6, 6, 100]; let sum = array.reduce(function (currentSum, currentNumber) { return currentSum + currentNumber } , 0)

  • @bjdsn
    @bjdsn2 жыл бұрын

    function duplicate(nums) { return new Set(nums.filter(n => nums.indexOf(n) !== nums.lastIndexOf(n))) }

  • @wisejs

    @wisejs

    2 жыл бұрын

    Крутое решение 👍

  • @Ushakov.M

    @Ushakov.M

    2 жыл бұрын

    Только Big O у решения большая

  • @user-xn2cr5oe4p
    @user-xn2cr5oe4pАй бұрын

    Зашёл увидел старющий как мир цикл и сразу закрыл видео 🤮

Келесі