Рубрики

Arcesium Interview Experience — старший инженер-программист (3 года опыта)

Раунд 1: Интернет ХакерРанк

Было 3 вопроса.

  1. Найдите наименьшее положительное целочисленное значение, которое не может быть представлено как сумма любого подмножества данного массива. http://espressocode.top/find-smallest-value-represented-sum-subset-given-array/

  2. Генерируйте два BST из данного массива так, чтобы максимальная высота среди них была минимальной. http://espressocode.top/generate-two-bsts-from-the-given-array-such-that-maximum-height-among-them-is-minimum/

  3. Дан стержень длиной n дюймов и массив цен, содержащий цены на все кусочки размером меньше n. Определите максимальное значение, которое можно получить, разрезая прут и продавая кусочки. http://espressocode.top/cutting-a-rod-dp-13/

Я решил первые 2 проблемы и был приглашен на раунд F2F в Хайдарабаде на следующих выходных.

F2f Раунд 2:

Было 3 раунда до F2f, и каждый был основан на исключении.

  1. В первом туре было три вопроса
    1. Если у вас есть список чашек, в которых каждое значение представляет диаметр чашек, и чашку меньшего диаметра можно поместить в чашку большего диаметра (и чашки одинакового диаметра нельзя штабелировать друг на друга), то разработайте стратегию для сложить их. Я предложил использовать HashMap, который будет хранить чашку в качестве ключа и значение в качестве счетчика. Затем выполните итерацию по HashMap и уменьшите счет, как вы выполняете итерацию по HashMap. Таким образом, для cups = [1, 2, 3, 4, 6, 1, 2, 3] хэш-карта будет выглядеть как map = {1: 2, 2: 2, 3: 2, 4: 1, 6: 1}. Затем вы можете просто уменьшить счет итерации по хэш-карте, чтобы найти количество стеков. Он спросил меня о сложности, и я ответил O (n * 2), что я буду перебирать HashMap снова и снова и заполнять его один раз. Затем меня спросили, могу ли я сделать это за один проход HashMap. Я не мог ответить на это, и в ходе обсуждения понял, что максимальное значение — это минимальное количество требуемых стеков.
    2. Если у вас есть список цен для дневного времени и две возможности транзакции, какие две транзакции вы бы сделали. Я не мог решить эту проблему http://espressocode.top/stock-buy-sell/.
    3. Найти пересечение двух списков. Сначала я предложил метод хеширования, и он попросил меня улучшить его. Поэтому я предложил метод разницы в длине. http://espressocode.top/write-a-function-to-get-the-intersection-point-of-two-linked-lists/
  2. Во втором туре было два вопроса:
    1. Найдите следующее большее число. 1234 -> 1324. Я не мог решить это. http://espressocode.top/find-next-greater-number-set-digits/
    2. Программа для проверки, является ли дерево BST или нет. http://espressocode.top/a-program-to-check-if-a-binary-tree-is-bst-or-not/

Поскольку это был отборочный раунд, и я мог сделать только 1 вопрос во втором раунде F2F, я был исключен.

В целом я почувствовал, что во втором раунде процесс немного усложнился с точки зрения помощи, а также вопросов. Весь процесс прошел хорошо: интервьюер очень помогал в первом раунде с каждым вопросом, а HR организовал все билеты на поездку. В основном это тяжело на DS, алгоритмах и Java.

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

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

Arcesium Interview Experience — старший инженер-программист (3 года опыта)

0.00 (0%) 0 votes