Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "doubly-linked.h"
- List::List(){
- first = NULL;
- }
- List::~List() {
- }
- void List::insert(int n) {
- Node* new_node = new Node();
- Node* last = first;
- new_node -> val = n;
- new_node -> next = NULL;
- if (first == NULL){
- new_node->prev = NULL;
- first = new_node;
- return;
- }
- while (last->next != NULL){
- last = last->next;
- }
- last->next = new_node;
- new_node->prev = last;
- }
- void List::reverse() {
- Node *temp = NULL;
- Node *current = first;
- while (current != NULL)
- {
- temp = current->prev;
- current->prev = current->next;
- current->next = temp;
- current = current->prev;
- }
- if(temp != NULL )
- first = temp->prev;
- }
- void List::print() {
- struct Node* ptr;
- ptr = first;
- while(ptr != NULL) {
- cout << ptr->val << " ";
- ptr = ptr->next;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement