Двунаправленный список (Старый вариант)

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(NULL),Tail(NULL){}; // конструктор створення пустого списку ~List(); // деструктор void Add(float data); // додавання елементів до списку }; List::~List() { while(Head) // доки головний елемент не NULL { Tail=Head->Next; // перевизначаємо хвіст delete Head; // видаляємо голову Head=Tail; //визначаємо нову голову } } void List::Add(float data){ Node *temp = new Node; // стврення нового елементу temp->Next = temp->Prev = NULL; // покажчик встановлено на наступний temp->data = data; // запис даних if (Head!=NULL){ temp->Prev = Tail; Tail->Next = temp; Tail = temp; } else{ temp->Prev = NULL; Head=Tail=temp; } } int main() { List list; list.Add(1.52); list.Add(4.2424); return 0; }
Editor Settings
Theme
Key bindings
Full width
Lines