mirror of
https://github.com/Tinkoff/career.git
synced 2025-12-11 14:07:06 +03:00
35 lines
2.4 KiB
Markdown
35 lines
2.4 KiB
Markdown
# Секция программирования в Тинькофф
|
||
|
||
В рамках секции проверяем знание алгоритмов и структур данных и умение их применять.
|
||
|
||
## Материалы для подготовки
|
||
### Рекомендуем повторить все, что связано с алгоритмами:
|
||
- основные структуры данных — строки, списки, деревья, ассоциативные массивы, векторы;
|
||
- базовые алгоритмы — поиск элементов в коллекциях, обход деревьев, сортировки, динамическое программирование;
|
||
- понятие сложности алгоритмов, 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), но эту информацию интервьюер не сообщает.
|
||
|
||
### Сайты, которые помогают решать задачи:
|
||
- [LeetCode](https://leetcode.com/)
|
||
- [HackerRank](https://www.hackerrank.com/)
|
||
- [Codeforces](https://codeforces.com/)
|
||
- [Topcoder](https://www.topcoder.com/)
|
||
- [Timus Online Judge](http://acm.timus.ru/)
|
||
|
||
### Курсы:
|
||
- [Алгоритмы, часть I](https://www.coursera.org/learn/algorithms-part1)
|
||
- [Специализация «Структуры и алгоритмы данных»](https://www.coursera.org/specializations/data-structures-algorithms)
|
||
- [Лекции курса «Алгоритмы и структуры данных» от Тинькофф Образование](https://www.youtube.com/playlist?list=PLjCCarnDJNssC82zhyeg8BxfhPG3b8iZ2)
|
||
- [Конспекты по продвинутым алгоритмам и структурам данных](https://algorithmica.org/ru/)
|
||
|
||
### Книги:
|
||
- Алгоритмы. Построение и анализ / Томас Кормен, Чарльз Лейзерсон, Рональд Ривест, Клиффорд Штайн
|
||
- Cracking the Coding Interview: 189 Programming Questions and Solutions / Gayle Laakmann McDowell
|