Пример двунаправленного списка

Run Settings
LanguageC++
Language Version
Run Command
#include <iostream> using namespace std; struct Node { float data; Node *next, *prev; }; class List { Node *head, *tail; public: List() : head(nullptr), tail(nullptr) {}; ~List(); void add(float data); }; List::~List() { while(head != nullptr) { tail = head->next; delete head; head = tail; } head = tail = nullptr; } void List::add(float data){ Node *newNode = new Node; newNode->data = data; newNode->next = newNode->prev = nullptr; if (head != nullptr) { newNode->prev = tail; tail->next = newNode; } else head = newNode; tail = newNode; cout << "В конец списка добавлен объект со значением: " << newNode->data << endl; } int main() { List list; list.add(1.52); list.add(4.2424); cout << endl; return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines