Рубрики

Snapdeal интервью опыт | Набор 3

Здравствуйте, ребята, я недавно появился в интервью Snapdeal для профиля Java в офисе в Бангалоре. Вот мой опыт.

Интервью состояло из 5 раундов, из которых 3 технических и один менеджер и один HR-раунд. Последние два раунда просто для нормального обсуждения.

Раунд 1: Технический раунд: с 1:30 до 2 часов
Собеседование начинается с некоторых нормальных вопросов поведения, за которыми следуют DS algo и Java.

1. Расскажите мне о себе.

2. Сколько вы оцениваете себя из 10 в DS & Algo. Вслед за Java.

3. Вам дается Бинарное дерево, и вас просят преобразовать Бинарное дерево так, чтобы оно обратило свое поддерево. Она хотела отразить это.

4. Она спросила меня, теперь у вас есть связанный список (по отдельности), и вас просят повернуть все 3 узла в связанном списке . Например, 1 2 3 4 5 6 7 8 9 => 3 2 1 6 5 4 9 8 7. Она спросила, что код должен быть на уровне производства.

5. Отныне она задала мне много вопросов о java следующим образом (она также задавала мне вопрос на основе моих ответов)
1. Что такое тема и как вы можете создать новую тему.
2. Каковы разные способы создания темы.
3. Хэш-код и метод равенства. Как это повлияет. Как вы управляете этим методом.
4. Вопрос, связанный с Hashmap, основанный на вышеуказанном вопросе и новом вопросе.
Остальное я забуду.

Раунд 2: Технический раунд: с 1:30 до 2 часов
Этот раунд в основном был посвящен только Java и тому, как глубоко я знаю Java. Он задавал мне различные вопросы следующим образом

1. О моем проекте

2. Многопоточность вопросов в очень глубоком. (Каждый думает о многопоточности в Java) Как Java обрабатывает потоки, когда поток жив, когда умирает, как умирает, что происходит, когда умирает, что происходит, когда жив, что делает JVM и т. Д.

3. Затем он дал мне другой сценарий, чтобы проверить мои навыки программирования на Java в многопоточном окружении.

4. Как работает hashmap и его реализация в Java. Как разрешить столкновения с помощью Java в hashmap.
Далее следует, что происходит при столкновении, как ведут себя методы get () и remove (). Какова будет сложность Hashmap для методов get (), remove (), put () и т. Д.
Много вопросов по JAVA

5. Что такое BST, что такое бинарное дерево, структура узла, что еще можно сделать в структуре узла, чтобы сделать его более эффективным?

6. Как вы будете проверять, является ли двоичное дерево BST или нет. Напишите код для этого.
-> Я объясняю, как можно проверить, является ли данное двоичное дерево BST или нет. Тогда я дал ему самое простое решение, используя inordertraversal. Затем он попросил меня закодировать его.
Я написал код на Java с использованием обхода inorder и ждал его, пока думал, что он может попросить меня решить без обхода inorder аналогичным образом, как я объясняю подход проверки двоичного дерева — BST или нет. Так что я тоже написал код для этого тоже 😉
Я написал код, основанный на значении min / max, и проверил рекурсивно.

7. Затем он попросил меня Распечатать матрицу в Spiralform с последующим кодом . Тем временем он спросил меня, что такое 2D-массивы и как они себя ведут и как им выделена память.

Раунд 3: Технический раунд: с 1 до 1:30 часа
Этот раунд лучший, потому что этот раунд подтолкнул меня к следующему уровню. В этом раунде есть все новые вопросы, которые я никогда не слышал и не решал. Это идет так;

1. Спросите меня о себе, своем проекте, над чем я работаю… и т. Д.

2. Различные вопросы по Java.

3. Вам предоставляется двумерный массив символов и набор слов (словарь). Ваша задача вернуть все слова, которые действительны и доступны в данном массиве.
-> Я объясняю ему разные подходы, начиная с отступления, чтобы решить вышеупомянутый вопрос. Затем он спросил меня о сложности, которая была экспоненциальной. Затем следует попросить оптимизировать его на следующем уровне.
Я оптимизирую свой алгоритм по-разному (с динамическим программированием или без него) один за другим и пытаюсь объединить свою оптимизацию, чтобы добиться лучшего подхода. Я продолжаю говорить ему, что в этом случае это сложность и все. Он попросил меня оптимизировать мой алгоритм и браво, когда я достигну того, чего он хочет, чтобы я достиг. Это решение на основе дерева префиксов. После предоставления этого решения я дополнительно оптимизирую его, чтобы отбросить так много путей, которые не ведут к решению (что дало мне + балл). Затем он спросил меня код (я немного нервничал, потому что этот алгоритм теперь стал сложным, я сказал, что реализация может быть немного хитрой, он сказал мне не торопиться). Я сказал ему, что так я подхожу к реализации решения на основе префиксного дерева, а затем сказал, что в реализации PrefixTrie доступны следующие вспомогательные методы, но он попросил меня сначала объяснить ему, как я могу эффективно реализовать этот метод, и я ответил ).
Затем потребовалось 25 минут, чтобы написать этот код. Он был счастлив, но снова попросил меня оптимизировать конкретный раздел кода (я использовал посещенный логический массив для отслеживания моего пути). Я снова оптимизирую эту часть различными способами, от плохой сложности до невероятной сложности, и он очень обрадовался.

Я хотел бы поблагодарить geeksforgeeks за предоставление такой замечательной платформы для изучения DS algo.

Если вам нравится GeeksforGeeks и вы хотите внести свой вклад, вы также можете написать статью и отправить ее по почте на contrib@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Все практические проблемы для Snapdeal !

Напишите свой опыт интервью или отправьте его по электронной почте на адрес contrib@geeksforgeeks.org

Рекомендуемые посты:

Snapdeal интервью опыт | Набор 3

0.00 (0%) 0 votes