public class LinkedListImplementation { Node head; // create head object of class Node class Node{ int data; Node next; // create next object of class Node Node(int d){ this.data = d; this.next=null; // assign next to null for all new Node } } public void addFirst(int d){ Node newNode = new Node(d); if(head ==null){ head = newNode; return; } newNode.next= head; head = newNode; } public void addLast(int d){ Node newNode = new Node(d); if(head ==null){ head = newNode; return; } Node currentNode = head; while(currentNode.next !=null){ currentNode = currentNode.next; } currentNode.next = newNode; } public void deleteFirst(){ if(head == null){ System.out.print("list is empty"); return; } head = head.next; } public void deleteLast(){ if(head == null){ System.out.print("list is empty"); return; } if(head.next == null){ head=null; return; } Node secondLast = head; Node lastNode = head.next; while(lastNode.next !=null){ lastNode = lastNode.next; secondLast = secondLast.next; } secondLast.next =null; } public void printList(){ Node currentNode = head; while(currentNode !=null){ System.out.print(currentNode.data + "-->"); currentNode = currentNode.next; } } public static void main(String[] args) { LinkedListImplementation list = new LinkedListImplementation(); list.addLast(1); list.addLast(2); list.addLast(3); list.addFirst(5); // list.deleteFirst(); list.deleteLast(); list.printList(); } }
Leave a Reply