«Алгоритмы» для начинающих

Это список тем, которые проходят в первом семестре профильного вуза. Или 20% тем из полноценного курса, которые дадут вам покрытие 80% на собеседовании на должность фронтенд-разработчика. Математика требуется в основном уровня 2 класса (сложение и умножение), 6 класса (натуральные степени и квадратный корень) и в одном месте уровня 10 класса (понимание, что такое логарифм).

«Алгоритмы» — маркетинговое название. Во-первых, первичны структуры данных (курс называется «Алгоритмы и структуры данных»), важнее понимать, чем список отличается от массива, а дерево от хэш-таблицы, чем уметь реализовывать методы на этих структурах данных. Во-вторых, большую часть алгоритмов и называть алгоритмами неловко (шестилетний ребенок интуитивно реализует бинарный поиск, когда ищет в толковом словаре непонятное слово). Но в массовом сознании этот список тем ассоциируется с термином «алгоритмы».

В идеале программы лучше писать на C. Но c фронтендерами мы используем тайпскрипт, чтобы заодно потренироваться писать интерфейсы и дженерики, а с джавистами — вы не поверите — джаву.