Дек на основе однонаправленного цикличного списка

Столкнулась с проблемой (а точнее заданием с университета): создать дек на основе однонаправленного цикличного списка. И, собственно, я не смогла найти никакой информации по поводу данного условия; максимум, что я находила, это деки на основе массивов (через вручную расписанные функции или #include <deque>, что мне использовать не стоило бы, как и классы). Хотелось бы узнать, как все-таки реализовать данный дек. ? Заранее спасибо за помощь!

Полное условие выглядит так:

  • Элемент структуры: вещественное число.
  • Дек на основе циклического однонаправленного списка.
  • Используя только основные операции для дека после каждого парного, вставить элемент со значением 0.

Примерное объявление списка и его инициализация:

struct list
{
    double field;
    struct list* ptr;
};
struct list* init(double a)
{
    struct list* lst;
    lst = (struct list*)malloc(sizeof(struct list));
    lst->field = a;
    lst->ptr = lst;
    return(lst);
}

Ответы (0 шт):