Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- iterator insert(iterator pos, T val)
- {
- Node<T> * x = new Node<T>;
- x->val = val;
- x->next = NULL;
- if (top == NULL && root == NULL)
- {
- root = x;
- top = x;
- return iterator(x, this);
- }
- if (root == top)
- {
- if (pos.getElement() == top)
- {
- root->next = x;
- top = x;
- }
- else
- {
- x->next = root;
- root = x;
- }
- }
- else
- {
- if (pos.getElement() == top)
- {
- pos.getElement()->next = x;
- top = x;
- cout << pos.getElement()->val << endl;
- }
- else if (pos.getElement()->next == root)
- {
- x->next = pos.getElement()->next;
- root = x;
- cout << pos.getElement()->next->val << endl;
- }
- }
- return iterator(x, this);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement