Блок задач

9. Шаблоны C++

Сложность 3

Задача «Поразрядная сортировка»

Реализовать функцию сортировки с задаваемым компаратором.

Справка Нужно для специализации шаблонной функции по value_type итератора:

http://stackoverflow.com/questions/6273793/how-to-specialize-iterator-by-its-value-type-in-c

Интерфейс функции:

Интерфейс идентичен http://www.cplusplus.com/reference/algorithm/sort/

template <class RandomAccessIterator, class Compare>
  void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);

В качестве основного алгоритма сортировки можно использовать стандартную (std::sort) Поразрядную сортировку нужно применять когда тип, на который указывает итератор - целочисленный (то есть нужна специализация шаблона)