С++ списки
В нём добавлять элементы в начало, конец, средину, делать поиск по списку, сортировка.
Нужна любая информция по даному вопросу(начиная от того, что такое двунаправленый неоднородный список с однородными подспискам из элементов с ключами.)
Наперёд огромное спасиба...