Пример успешного собеседования Middle Java в крупный банк c лайв-кодингом

Поділитися
Вставка
  • Опубліковано 24 гру 2024

КОМЕНТАРІ • 34

  • @YuryMusiyenka
    @YuryMusiyenka Місяць тому +11

    "Давай наверное что-то из того что может пригодится"
    У нас на входе число n, нужно подсчитать количество 1 меньших или равных n.............

  • @viktormorozov5146
    @viktormorozov5146 Місяць тому +2

    В первой задаче в числе 11 - 2 единицы, а в числах от 10 до 20 - 11 единиц а не 10. Исходя из условия задачи последний алгоритм считает правильно хоть и ресурсоемко. Но тут выплывает проблема, что интервьювер сам не знает какой правильный ответ должен выдавать алгоритм.

  • @psevdonim_youtube147
    @psevdonim_youtube147 Місяць тому +2

    всё в java передается по ссылкам? ну ну, а вы точно эксперт?😀😀

  • @МаксМакс-ч8к
    @МаксМакс-ч8к Місяць тому +9

    Вопрос к знатокам: скажите, пжл, в чём смысл на лайв кодинге давать задачи которые не имеют ничего общего с реальным рабочим процессом и по ним судить об уровне работника???!!! (Речь не о задачах из видео, а вообще)! Просто как по мне это полный бред (причём интервьюер обычно сам это понимает)! Я один раз даже попытался отзеркалить это, попросил интервьюера назвать падежи и просклонять что нибудь! Естественно он не ответил)) (программа начальной школы) затем задал ему вопрос: могу ли я сказать, что ты не владеешь русским языком?! Вразумительного ответа не последовало😂

    • @Пумпурумм
      @Пумпурумм Місяць тому +6

      В том, чтобы увидеть как ты мыслишь, балда. Че за глупый вопрос? Если давать реальные рабочие задачи, то сколько времени уйдёт на собес? Помимо того, что ещё нужно вообще понять, что знает человек. А потом когда компании делают по 3 этапа отбора, все ноют «АХ ЧТО Я ДОЛЖЕН ЭТО ТЕСТОВОЕ 4 часа пилить??»

    • @saimonstout3062
      @saimonstout3062 Місяць тому

      @@Пумпурумм какие нахер мысли??? что ты несешь?? всем похеру как ты мыслишь, если тобой затыкают дырку и ты делаешь таски то всем плевать на твои мысли. Особенно когда тебя собесят на бэк, ты выходишь на работу и тебе говорят, тут у нас бэк настроен, надо на фронте на ангуляре писать первое время, это ок:???

  • @sultanemiluulu5930
    @sultanemiluulu5930 Місяць тому

    Когда Генри Кавилл успел стать джава разработчиком?

  • @mariach1357
    @mariach1357 Місяць тому +2

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

    • @Dmitry_Kuznetsov
      @Dmitry_Kuznetsov Місяць тому

      Поиск места для вставки не уменьшает количество элементов. Поэтому они всё правильно сказали n(logn)

    • @mariach1357
      @mariach1357 Місяць тому +1

      @ так место для вставки находится за логарифм. Дальше вставка, в зависимости от структуры данных, это линейная либо константная сложность
      Там числа по одному приходят, это поток чисел, поэтому не nlogn

    • @goodvideobro
      @goodvideobro Місяць тому

      ​@@mariach1357при поиске элемента допустим в массиве, мы рекурсивно делим по полам на подмассивы пока не найдем нужный индекс. То и при сортировке в бинарном дереве

    • @Dmitry_Kuznetsov
      @Dmitry_Kuznetsov Місяць тому

      ​@@mariach1357а какая будет?

    • @ruslooob
      @ruslooob Місяць тому

      Решение задачи обсуждалось до написания, пересмотрите этот фрагмент еще раз. В моем решении вставка за единицу, а поиск максимального за N Log N. В решении через бинарный поиска сложность вставки N, а поиск максимальных O(M), где М - кол-во максимальных чисел для вывода.
      На собеседовании было ограниченное время для решения, поэтому я выбрал второй вариант. Он значительно проще в написании и в понимании, в нем нет никаких edge-cas-ов. Я писал так быстро, как мог, но все равно, у нас даже не осталось времени на обсуждения кода. Если бы я пытался написать "правильно", то вообще бы не решил ни одну задачу. По-хорошему на эти две задачи нужно было выделить час времени, а не 25 минут. Так что все с решениями в порядке.

  • @seviginu
    @seviginu Місяць тому +2

    Успешное собеседование? По факту кандидат не справился ни с одной из задачек.
    В первой задачке детское решение с временем O(n) - джуновский уровень.
    Во второй задачке решение даже не соответствует условию задачи. Было сказано, что памяти не хватает на хранение всех чисел, при этом решение от кандидата - тупо хранить все значения в массиве :)
    Кстати, решение с PriorityQueue, которое предложил интервьювер, тоже отвалиться с OutOfMemoryError.

    • @ruslooob
      @ruslooob Місяць тому

      Держу в курсе, что у первой задачи сложность hard. Найди на литкоде number-of-digit-one

    • @ruslooob
      @ruslooob Місяць тому +2

      Первая задача - это hard-уровень, если попытаешься решить быстрее O(n). Решается через динамическое программирование. Удачи тебе решить ее самому хотя бы за день.
      По второй задаче с PriorityQueue (min-heap) лучший вариант, т.к можно указать размер очереди и вытаскивать из не наименьший элемент каждый раз за константое время. Нужно лишь определить константу N - максимальное кол-во эл-тов в очереди. Я не правильно понял условие задачи - бывает 😀. Кстати это сплошь и рядом на реальных собеседованиях.

    • @1haruspex1
      @1haruspex1 Місяць тому +2

      если ты не собираешься зарабатывать на жизнь решением литкода и прохождением собесов, то и учится решать эти задачки не нужно. Да и то, даже не на всех собесах будут душить литкодом.

    • @seviginu
      @seviginu Місяць тому +3

      @@ruslooob У меня нет вопрос к кандидату, здесь скорее проблема интервьевера. Просто мне не понятно, как из этого собеседования можно оценить кандидата. 20 минут поверхностных вопросов во теории из рубрики "100 популярных вопросов к собеседованию", и основная часть с двумя задачками.
      К первой задачке у меня тоже много вопросов, у нее или слишком тупое решение, или умное, которое без дроча hard литкода быстро не найти. Просто что проверяет тупое решение? Знание цикла for? Плюс она очень далека от практики, не вижу смысла такое использовать для проверки навыков)
      Вторая задачка тоже не без подвоха, сам несколько раз пересматривал объяснение условия. Изначально сказано, что у нас нет ограничения на количество элементов, тогда идея с PQ рухнет, потому что хранить 2^32 чисел она не сможет(и надо смотреть в сторону TreeMap, но там тоже есть проблемы). Если принять количество элементов, которые мы будем печатать, константным(и не сильно большим), то все норм. Здесь косяк интервьювера - условие двойственно.
      Короче, я не хотел сказать, что кандидат не отсобеседовался на свой уровень. Имхо, но нельзя из этого собеса понять уровень кандидата, а тем более назвать собес успешным)

    • @ruslooob
      @ruslooob Місяць тому

      @@seviginu За час вообще можно мало что понять. Имхо, лучшее собеседование - разговор про опыт с углублениями в детали, с которыми хорошо знаком кандидат. Проблема в том, что такие интервью будут отнимать намнооого больше сил у интервьюера и к нему невозможно подготовиться.
      И это все равно лучше, чем 6 собеседований в тиню или яндекс.

  • @blackforest8926
    @blackforest8926 Місяць тому

    😺🤟🤟🤟

  • @АкхдиАхади
    @АкхдиАхади Місяць тому

    Опять алгоритмы не имеющие ничего общего с реальностью

  • @user-cf4mx7cb2b
    @user-cf4mx7cb2b Місяць тому

    чем отличается крупный банк от некрупный банк?

  • @invicta3902
    @invicta3902 13 днів тому

    Трижды переваренный к….