В первой задаче в числе 11 - 2 единицы, а в числах от 10 до 20 - 11 единиц а не 10. Исходя из условия задачи последний алгоритм считает правильно хоть и ресурсоемко. Но тут выплывает проблема, что интервьювер сам не знает какой правильный ответ должен выдавать алгоритм.
Вопрос к знатокам: скажите, пжл, в чём смысл на лайв кодинге давать задачи которые не имеют ничего общего с реальным рабочим процессом и по ним судить об уровне работника???!!! (Речь не о задачах из видео, а вообще)! Просто как по мне это полный бред (причём интервьюер обычно сам это понимает)! Я один раз даже попытался отзеркалить это, попросил интервьюера назвать падежи и просклонять что нибудь! Естественно он не ответил)) (программа начальной школы) затем задал ему вопрос: могу ли я сказать, что ты не владеешь русским языком?! Вразумительного ответа не последовало😂
В том, чтобы увидеть как ты мыслишь, балда. Че за глупый вопрос? Если давать реальные рабочие задачи, то сколько времени уйдёт на собес? Помимо того, что ещё нужно вообще понять, что знает человек. А потом когда компании делают по 3 этапа отбора, все ноют «АХ ЧТО Я ДОЛЖЕН ЭТО ТЕСТОВОЕ 4 часа пилить??»
@@Пумпурумм какие нахер мысли??? что ты несешь?? всем похеру как ты мыслишь, если тобой затыкают дырку и ты делаешь таски то всем плевать на твои мысли. Особенно когда тебя собесят на бэк, ты выходишь на работу и тебе говорят, тут у нас бэк настроен, надо на фронте на ангуляре писать первое время, это ок:???
Очень слабое решение задач, максимум на уровень джуна. Кандидат не подмечает простейшие ошибки в коде. Не задает никаких уточняющих вопросов и не приводит примеров, из-за чего это приходится делать интервьюеру. Корнер кейсы подмечает только интервьюер. В итоге интервьюер просто рассказывает как решить задачу Бинарный поиск быстрее сортировки кстати, хотя в интервью оба сделали обратный вывод. Оба решения задач даже с помощью интервьюера в итоге очень слабые. Написать тесты кандидат тоже не предложил
@ так место для вставки находится за логарифм. Дальше вставка, в зависимости от структуры данных, это линейная либо константная сложность Там числа по одному приходят, это поток чисел, поэтому не nlogn
@@mariach1357при поиске элемента допустим в массиве, мы рекурсивно делим по полам на подмассивы пока не найдем нужный индекс. То и при сортировке в бинарном дереве
Решение задачи обсуждалось до написания, пересмотрите этот фрагмент еще раз. В моем решении вставка за единицу, а поиск максимального за N Log N. В решении через бинарный поиска сложность вставки N, а поиск максимальных O(M), где М - кол-во максимальных чисел для вывода. На собеседовании было ограниченное время для решения, поэтому я выбрал второй вариант. Он значительно проще в написании и в понимании, в нем нет никаких edge-cas-ов. Я писал так быстро, как мог, но все равно, у нас даже не осталось времени на обсуждения кода. Если бы я пытался написать "правильно", то вообще бы не решил ни одну задачу. По-хорошему на эти две задачи нужно было выделить час времени, а не 25 минут. Так что все с решениями в порядке.
Успешное собеседование? По факту кандидат не справился ни с одной из задачек. В первой задачке детское решение с временем O(n) - джуновский уровень. Во второй задачке решение даже не соответствует условию задачи. Было сказано, что памяти не хватает на хранение всех чисел, при этом решение от кандидата - тупо хранить все значения в массиве :) Кстати, решение с PriorityQueue, которое предложил интервьювер, тоже отвалиться с OutOfMemoryError.
Первая задача - это hard-уровень, если попытаешься решить быстрее O(n). Решается через динамическое программирование. Удачи тебе решить ее самому хотя бы за день. По второй задаче с PriorityQueue (min-heap) лучший вариант, т.к можно указать размер очереди и вытаскивать из не наименьший элемент каждый раз за константое время. Нужно лишь определить константу N - максимальное кол-во эл-тов в очереди. Я не правильно понял условие задачи - бывает 😀. Кстати это сплошь и рядом на реальных собеседованиях.
если ты не собираешься зарабатывать на жизнь решением литкода и прохождением собесов, то и учится решать эти задачки не нужно. Да и то, даже не на всех собесах будут душить литкодом.
@@ruslooob У меня нет вопрос к кандидату, здесь скорее проблема интервьевера. Просто мне не понятно, как из этого собеседования можно оценить кандидата. 20 минут поверхностных вопросов во теории из рубрики "100 популярных вопросов к собеседованию", и основная часть с двумя задачками. К первой задачке у меня тоже много вопросов, у нее или слишком тупое решение, или умное, которое без дроча hard литкода быстро не найти. Просто что проверяет тупое решение? Знание цикла for? Плюс она очень далека от практики, не вижу смысла такое использовать для проверки навыков) Вторая задачка тоже не без подвоха, сам несколько раз пересматривал объяснение условия. Изначально сказано, что у нас нет ограничения на количество элементов, тогда идея с PQ рухнет, потому что хранить 2^32 чисел она не сможет(и надо смотреть в сторону TreeMap, но там тоже есть проблемы). Если принять количество элементов, которые мы будем печатать, константным(и не сильно большим), то все норм. Здесь косяк интервьювера - условие двойственно. Короче, я не хотел сказать, что кандидат не отсобеседовался на свой уровень. Имхо, но нельзя из этого собеса понять уровень кандидата, а тем более назвать собес успешным)
@@seviginu За час вообще можно мало что понять. Имхо, лучшее собеседование - разговор про опыт с углублениями в детали, с которыми хорошо знаком кандидат. Проблема в том, что такие интервью будут отнимать намнооого больше сил у интервьюера и к нему невозможно подготовиться. И это все равно лучше, чем 6 собеседований в тиню или яндекс.
"Давай наверное что-то из того что может пригодится"
У нас на входе число n, нужно подсчитать количество 1 меньших или равных n.............
В первой задаче в числе 11 - 2 единицы, а в числах от 10 до 20 - 11 единиц а не 10. Исходя из условия задачи последний алгоритм считает правильно хоть и ресурсоемко. Но тут выплывает проблема, что интервьювер сам не знает какой правильный ответ должен выдавать алгоритм.
всё в java передается по ссылкам? ну ну, а вы точно эксперт?😀😀
Вопрос к знатокам: скажите, пжл, в чём смысл на лайв кодинге давать задачи которые не имеют ничего общего с реальным рабочим процессом и по ним судить об уровне работника???!!! (Речь не о задачах из видео, а вообще)! Просто как по мне это полный бред (причём интервьюер обычно сам это понимает)! Я один раз даже попытался отзеркалить это, попросил интервьюера назвать падежи и просклонять что нибудь! Естественно он не ответил)) (программа начальной школы) затем задал ему вопрос: могу ли я сказать, что ты не владеешь русским языком?! Вразумительного ответа не последовало😂
В том, чтобы увидеть как ты мыслишь, балда. Че за глупый вопрос? Если давать реальные рабочие задачи, то сколько времени уйдёт на собес? Помимо того, что ещё нужно вообще понять, что знает человек. А потом когда компании делают по 3 этапа отбора, все ноют «АХ ЧТО Я ДОЛЖЕН ЭТО ТЕСТОВОЕ 4 часа пилить??»
@@Пумпурумм какие нахер мысли??? что ты несешь?? всем похеру как ты мыслишь, если тобой затыкают дырку и ты делаешь таски то всем плевать на твои мысли. Особенно когда тебя собесят на бэк, ты выходишь на работу и тебе говорят, тут у нас бэк настроен, надо на фронте на ангуляре писать первое время, это ок:???
Когда Генри Кавилл успел стать джава разработчиком?
Очень слабое решение задач, максимум на уровень джуна. Кандидат не подмечает простейшие ошибки в коде. Не задает никаких уточняющих вопросов и не приводит примеров, из-за чего это приходится делать интервьюеру. Корнер кейсы подмечает только интервьюер. В итоге интервьюер просто рассказывает как решить задачу
Бинарный поиск быстрее сортировки кстати, хотя в интервью оба сделали обратный вывод.
Оба решения задач даже с помощью интервьюера в итоге очень слабые. Написать тесты кандидат тоже не предложил
Поиск места для вставки не уменьшает количество элементов. Поэтому они всё правильно сказали n(logn)
@ так место для вставки находится за логарифм. Дальше вставка, в зависимости от структуры данных, это линейная либо константная сложность
Там числа по одному приходят, это поток чисел, поэтому не nlogn
@@mariach1357при поиске элемента допустим в массиве, мы рекурсивно делим по полам на подмассивы пока не найдем нужный индекс. То и при сортировке в бинарном дереве
@@mariach1357а какая будет?
Решение задачи обсуждалось до написания, пересмотрите этот фрагмент еще раз. В моем решении вставка за единицу, а поиск максимального за N Log N. В решении через бинарный поиска сложность вставки N, а поиск максимальных O(M), где М - кол-во максимальных чисел для вывода.
На собеседовании было ограниченное время для решения, поэтому я выбрал второй вариант. Он значительно проще в написании и в понимании, в нем нет никаких edge-cas-ов. Я писал так быстро, как мог, но все равно, у нас даже не осталось времени на обсуждения кода. Если бы я пытался написать "правильно", то вообще бы не решил ни одну задачу. По-хорошему на эти две задачи нужно было выделить час времени, а не 25 минут. Так что все с решениями в порядке.
Успешное собеседование? По факту кандидат не справился ни с одной из задачек.
В первой задачке детское решение с временем O(n) - джуновский уровень.
Во второй задачке решение даже не соответствует условию задачи. Было сказано, что памяти не хватает на хранение всех чисел, при этом решение от кандидата - тупо хранить все значения в массиве :)
Кстати, решение с PriorityQueue, которое предложил интервьювер, тоже отвалиться с OutOfMemoryError.
Держу в курсе, что у первой задачи сложность hard. Найди на литкоде number-of-digit-one
Первая задача - это hard-уровень, если попытаешься решить быстрее O(n). Решается через динамическое программирование. Удачи тебе решить ее самому хотя бы за день.
По второй задаче с PriorityQueue (min-heap) лучший вариант, т.к можно указать размер очереди и вытаскивать из не наименьший элемент каждый раз за константое время. Нужно лишь определить константу N - максимальное кол-во эл-тов в очереди. Я не правильно понял условие задачи - бывает 😀. Кстати это сплошь и рядом на реальных собеседованиях.
если ты не собираешься зарабатывать на жизнь решением литкода и прохождением собесов, то и учится решать эти задачки не нужно. Да и то, даже не на всех собесах будут душить литкодом.
@@ruslooob У меня нет вопрос к кандидату, здесь скорее проблема интервьевера. Просто мне не понятно, как из этого собеседования можно оценить кандидата. 20 минут поверхностных вопросов во теории из рубрики "100 популярных вопросов к собеседованию", и основная часть с двумя задачками.
К первой задачке у меня тоже много вопросов, у нее или слишком тупое решение, или умное, которое без дроча hard литкода быстро не найти. Просто что проверяет тупое решение? Знание цикла for? Плюс она очень далека от практики, не вижу смысла такое использовать для проверки навыков)
Вторая задачка тоже не без подвоха, сам несколько раз пересматривал объяснение условия. Изначально сказано, что у нас нет ограничения на количество элементов, тогда идея с PQ рухнет, потому что хранить 2^32 чисел она не сможет(и надо смотреть в сторону TreeMap, но там тоже есть проблемы). Если принять количество элементов, которые мы будем печатать, константным(и не сильно большим), то все норм. Здесь косяк интервьювера - условие двойственно.
Короче, я не хотел сказать, что кандидат не отсобеседовался на свой уровень. Имхо, но нельзя из этого собеса понять уровень кандидата, а тем более назвать собес успешным)
@@seviginu За час вообще можно мало что понять. Имхо, лучшее собеседование - разговор про опыт с углублениями в детали, с которыми хорошо знаком кандидат. Проблема в том, что такие интервью будут отнимать намнооого больше сил у интервьюера и к нему невозможно подготовиться.
И это все равно лучше, чем 6 собеседований в тиню или яндекс.
😺🤟🤟🤟
Опять алгоритмы не имеющие ничего общего с реальностью
чем отличается крупный банк от некрупный банк?
Он больше😊
У кого денег больше)))
Трижды переваренный к….