#include "list.h" List::List(): head_(nullptr), tail_(nullptr), count_(0) {} List::~List() { clear(); } void List::push_back(int data) { Node *new_node = new Node; new_node->data_p = data; new_node->next = nullptr; if (head_ == nullptr) { head_ = new_node; tail_ = new_node; } else { tail_->next = new_node; tail_ = new_node; } count_++; } void List::push_front(int data) { Node *new_node = new Node; new_node->data_p = data; new_node->next = head_; head_ = new_node; if (tail_ == nullptr) { tail_ = new_node; } count_++; }