list implementation as linked list c++ code example
Example 1: linkedlist implementation in c++
using namespace std;
struct node
{
int data;
node *next;
};
class linked_list
{
private:
node *head,*tail;
public:
linked_list()
{
head = NULL;
tail = NULL;
}
void add_node(int n)
{
node *tmp = new node;
tmp->data = n;
tmp->next = NULL;
if(head == NULL)
{
head = tmp;
tail = tmp;
}
else
{
tail->next = tmp;
tail = tail->next;
}
}
};
int main()
{
linked_list a;
a.add_node(1);
a.add_node(2);
return 0;
}
Example 2: linked list class c++ basic implementation
template<typename T>
class list {
public:
struct node {
T value;
node* next;
};
list() : hd(nullptr), tl(nullptr) {}
node* head() { return hd; }
node* tail() { return tl; }
void insert(node* prior, T value);
node* at(int i);
void erase(node* prior);
void clear();
void push_back(T value);
void pop_back();
void push_front(T value);
void pop_front();
int size();
private:
node* hd, tl;
}