Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stdlib.h>
- using namespace std;
- class unit
- {
- public:
- unit(int data); //constructor
- virtual ~unit(); //destructor
- void push(int data);
- int getData();
- unit* getNext();
- unit* findElement(int data);
- void addToTheEnd(int data);
- void deleteLast();
- private:
- unit* next;
- int data;
- };
- unit::unit(int data)
- {
- this->data = data;
- next = NULL;
- }
- unit::~unit()
- {
- delete[] next;
- }
- void unit::push(int data)
- {
- unit* element = new unit(this->data);
- element->next = this->next;
- this->next = element;
- this->data = data;
- }
- int unit::getData()
- {
- return data;
- }
- unit* unit::getNext()
- {
- return this->next;
- }
- unit* unit::findElement(int data)
- {
- unit* selected = this;
- while (selected->getData() != data)
- {
- selected = selected->getNext();
- }
- return selected;
- }
- void unit::addToTheEnd(int data)
- {
- unit* newData = new unit(data);
- unit* selected = this;
- while (selected->next != NULL)
- {
- selected = selected->next;
- }
- selected->next = newData;
- }
- void unit::deleteLast()
- {
- unit* selected = this;
- while (selected->next != 0)
- {
- selected = selected->next;
- }
- selected = NULL;
- }
- class list
- {
- public:
- list();
- ~list();
- int getLenght();
- void print();
- void add(int data);
- private:
- int lenght;
- unit* root;
- };
- list::list()
- {
- lenght = 0;
- }
- list::~list()
- {
- delete root;
- }
- int list::getLenght()
- {
- return lenght;
- }
- void list::print()
- {
- unit* selected = root;
- while (selected->getNext() != NULL)
- {
- cout << selected->getData();
- cout << endl;
- }
- cout << selected->getData();
- }
- void list::add(int data)
- {
- if (lenght != 0)
- {
- root->addToTheEnd(data);
- }
- else
- {
- root = new unit(data);
- }
- lenght++;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement