Найти тему
GeekBrains

Какие задачи решают программисты на собеседованиях в США

Оглавление

Независимо от языков, каждый программист должен обладать аналитическим и логическим мышлением, а также уметь выстраивать эффективные алгоритмы — именно эти способности интересуют HR и менеджеров в кандидатах. Потренируйтесь в составлении алгоритмов и решении логических задач. Представляем 16 реальных вариантов заданий, встречающихся в интервью американских IT-компаний.

А. Сортировка

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

Б. Массивы и строки

2. Определите, все ли символы в строке уникальны

3. Расположите символы в строке в обратном порядке

4. Запишите слова в строке в обратном порядке

В. Связанные списки

5. Удалить дубли из неотсортированного связанного списка. А потом - то же самое, но без дополнительных переменных.

6. Найти N-й с конца элемент в списке

7. Определить, является ли список цикличным

8. Составить элементы списка в обратном порядке

Г. Стеки / Очереди

9. Создайте стек, который позволяет найти минимальное/максимальное значение за одну операцию (O(1))

10. Решите загадку “Ханойская Башня” с помощью стека

Ханойская башня. Условия:
На один из трех стержней нанизаны 8 колец в порядке уменьшения площади от нижнего к верхнему.
Задача: за наименьшее число ходов перенести всю пирамиду на другой стержень. За один раз разрешается переносить только одно кольцо; запрещено класть большее кольцо на меньшее.

11. Реализовать очередь с помощью двух стеков

Д. Деревья / Графы

12. Выяснить, есть ли маршрут между двумя узлами

13. Определить, сбалансировано ли бинарное дерево     

14. Вернуть высоту дерева

Е. Другие вопросы

15. Слить два отсортированных связанных списка чисел в один

16. Написать функцию, которая выводит все простые числа от 1 до N (включительно)

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

Если понравилась статья, ставьте лайк и подписывайтесь на канал.

Почитайте похожие материалы:

12 ошибок начинающего программиста

Как собеседовать программиста: 5 вопросов не про код

Что читать айтишнику. 12 лучших книг по программированию

7 ресурсов с задачками по программированию

Худшие книги по программированию

-2