data-structure/src/list.cpp
2024-04-07 18:44:19 +08:00

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_++;
}