33 lines
578 B
C++
33 lines
578 B
C++
#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_++;
|
|
}
|