CarWale Interview Experience (в кампусе, 2022 г.)

Опубликовано: 14 Января, 2023

Первый раунд: это было на Hackerrank. Нам дали 4 вопроса кодирования, которые были случайными для всех.

Некоторые из вопросов, которые я получил, заключаются в следующем:

Приоритеты соответствия: система содержит очередь всех текущих проблем вместе с их приоритетами. Приоритеты варьируются от 1 до 99. Создайте алгоритм, который будет переназначать приоритеты так, чтобы значение максимального назначенного приоритета было минимальным, сохраняя относительные приоритеты между всеми задачами одинаковыми.

Пример:

priorities = [1, 4, 8, 4]
There are three priority levels: 1, 4, and 8. 
The array of elements are reassigned to priorities [1, 2, 3, 2]. 
Their relative priorities are maintained while the value of the maximum priority is minimized.

Учитывая приоритеты проблем, верните список, содержащий переназначенные значения приоритета без изменения порядка.

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

Пример:

devicenames = ["switch", "tv", "switch", watch", "switch","tv"]

Отвечать:

return uniqueDevicenames = ["switch", "tv", "switch1", "watch", "switch2", "tv1"]

Идеальные пары: пара целых чисел (x, y) является идеальной, если выполняются оба следующих условия:

min(|x-y|,|x+y|) <=min(|x|,|y|)
max(|x-y|,|x+y|) >=max(|x|,|y|)

Для заданного массива arr длины n найдите количество совершенных пар arr[i], arr[j], где 0 i < j < n.

Обход сетки: в этом вопросе кодер должен был найти минимальное количество переходов от начальной точки к конечной.
Я смог решить 2 задачи полностью и 1 проблему частично.

Второй раунд: Это был раунд технического собеседования, который проводился офлайн в нашем кампусе. Интервьюер задал следующие вопросы:

Продолжительность: 1 час

  1. Расскажи мне о себе
  2. Как вы оцениваете себя в структурах данных по шкале от 1 до 10.
  3. Обсуждение языков программирования (c++, java, python)

После этого интервьюер задал 2 кодирующих вопроса:

  • Найдите знаменитость — График (среда GFG — https://practice.geeksforgeeks.org/problems/the-celebrity-problem) Найдите человека из n числа людей, которых все знают, но он не знает никого, учитывая соотношение между 2 номера.
  • Binary-tree-cameras Binary Tree (Leetcode Hard — https://leetcode.com/problems/binary-tree-cameras/) Найдите минимальное количество камер, необходимое для покрытия всех узлов бинарного дерева, при наличии 1 камеры в любой момент времени. node отслеживает только своего 1-го дочернего или 1-го родителя.

    Сначала я объяснил подход грубой силы, а затем интервьюер попросил меня еще больше оптимизировать подход.

  • Обсуждение проектов, какие технологии использовались? Почему? что такое ларавель? разные технологии?
  • У вас есть какие-либо вопросы ко мне?

Советы: собеседование будет назначено на следующий день после теста на кодирование. Так что подготовьтесь к собеседованию заранее. В нашем случае мы сдали тест в 14:00, результаты были объявлены около 23:00, а в 2:00 нас попросили быть готовыми ровно в 8:30 утра следующего дня.

Меня не выбрали для дальнейших раундов. Но это был приятный опыт, так как это было мое первое офлайн-личное интервью.