Открыто
07.12.2017, 10:30
Произвести рефакторинг модуля, реализующего декартово дерево (treap = tree + heap = дерамида).
В процессе рефакторинга необходимо:
new
, delete
, объявление переменных не в начале блока, а там где они реально используются, и т. п.)std::cout
и т.пtypedef int ElementType
использовать шаблоны.std::less
).typedef struct TreapNode *Position
создав итератор.std::exception
.В целом, получившийся класс должен приближаться к интерфейсу std::set
по мере возможностей (принципиально новый функционал дописывать не нужно).
Архив с проектами для Visual Studio 2013 и Visual Studio 2015.