• сортировки – от пузырька, до параллельной кеш-независимой сортировки;
  • динамическое программирование;
  • алгоритмы сжатия данных – кодирование Хаффмана, арифметическое кодирование, сжатие подпоследовательностей;
  • символические вычисления – как организовать;
  • как сделать статическую структуру динамической – как сделать быструю (O(logN)) вставку в упорядоченный массив.

Материалы по перечисленным темам:

  • Наша статья, посвященная пяти основным алгоритмам сортировки.
  • Введение в динамическое программирование для начинающих.
  • Книга, посвященная методам сжатия данных. Несколько тем, рассмотренных в книге: кодирование источников данных без памяти (канонический алгоритм Хаффмана, арифметическое сжатие, векторное квантование), словарные методы сжатия данных, методы контекстного моделирования и другие.
  • Введение в структуры данных для новичков: динамический массив

 

Он должен уметь выводить алгоритмы, а не знать их. Ровно как и математик должен уметь выводить доказательства.