D>Не поверите, но я тоже ни разу не писал сортировку по работе. Тем не менее продолжаю утверждать, что для решения определенного класса задач необходимо ЗНАТЬ алгоритмы и структуры данных, а не уметь искать их в интернете. Потому что задача обычно состоит не в том, чтобы написать еще одну реализацию сортировки, а в том, чтобы решить конкретную прикладную задачу, используя базовые алгоритмы и структуры данных как конструктор (или как источник идей).
В общем, чего и требовалось доказать. Сортировка — это способ сортировать кандидатов.

Вот нифига не помню как написать квик сорт или красно-черное дерево. Ни то, ни другое никогда не писал сам.
Более того, постепенно становлюсь противником языков с указателями, ручным управлением памяти и структурами данных основанных на указателях. Парадокс, но портировав низко и средненагруженные проекты с C++ на Node.js получили потерю производительности в 1,5-3 раза при сокращении времени девелопмента в 5-10 раз.
Думаю, в Yandex тенденция сваливания с C/С++ тоже должна иметь место для некритичных проектов