Files
tinkoff-career/interview/sections/programming.md
2022-01-17 19:05:23 +03:00

2.4 KiB
Raw Blame History

Секция программирования в Тинькофф

В рамках секции проверяем знание алгоритмов и структур данных и умение их применять.

Материалы для подготовки

Рекомендуем повторить все, что связано с алгоритмами:

  • основные структуры данных — строки, списки, деревья, ассоциативные массивы, векторы;
  • базовые алгоритмы — поиск элементов в коллекциях, обход деревьев, сортировки, динамическое программирование;
  • понятие сложности алгоритмов, O-нотация.

Пример задачи

Даны три неубывающих массива чисел. Найти число, которое присутствует во всех трех массивах.

Input: [1,2,4,5], [3,3,4], [2,3,4,5,6]
Output: 4

Целевое решение работает за O(p + q + r), где p, q, r длины массивов, доп. память O(1), но эту информацию интервьюер не сообщает.

Сайты, которые помогают решать задачи:

Курсы:

Книги:

  • Алгоритмы. Построение и анализ / Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
  • Cracking the Coding Interview: 189 Programming Questions and Solutions / Gayle Laakmann McDowell