Здравствуйте, Dufrenite, Вы писали:
D>Народ, тут мне сказали, что я не алгоритмист и вообще... D>Объясните плиз, что это за разновидность такая?
Алгоритмист — это тот, кто может (должен), например, сказать "мы можем сейчас это временно реализовать со списком, но надо будет через год переделать на дерево, потому что при нагрузке в миллион записей это окажется основным узким местом". Или, например, такое: "Эта задача в наших условиях разрешима только методом A, но у него при хорошем среднем времени — худшее время недопустимо, поэтому его работу надо вынести в отдельный тред."
Знания и умения, требуемые от алгоритмиста — хорошее знание типичных алгоритмов решения задач как общего плана, так и в своей области; умение их описать на языке, понятном кодеру; умение говорить с архитектором о своём уровне реализации; умение переводить общеархитектурные решения на свой уровень, определяя, что надо сделать и как это можно делать... Обычно ему требуется высшее образование по специальности; что такое O(N^2) он должен понимать во всех деталях даже разбуженным посреди ночи, а умение отличать NP-полные задачи от не-таковых — весь рабочий день;)) Ну и, разумеется, ему недопустимо путать массив со списком, а AVL-деревья с R-деревьями;))