Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public void deletionOfNode(int location) {
- if (head == null) {
- System.out.println("the SLL does not exist");
- return;
- } else if (location == 0) {
- head = head.next;
- size--;
- if (size == 0) {
- tail = null;
- }
- } else if (location >= size) {
- Node tempNode = head;
- //node located before last one
- for (int i = 0; i < size - 1; i++) {
- tempNode = tempNode.next;
- }
- if (tempNode == head) {
- //we have only 1 element
- tail = head = null;
- size--;
- return;
- //we have 1 element
- }
- //we have more than 1 element
- tempNode.next = null;
- tail = tempNode;
- size--;
- //more than 1 element
- } else {
- Node tempNode = head;
- for (int i = 0; i < location - 1; i++) {
- tempNode = tempNode.next;
- }
- //setting node next reference to the node that is located next next to the node
- tempNode.next = tempNode.next.next;
- size--;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement