delete middle Node - linkedlist



public class deleteMidNode {
Node head;

public void deleteMiddleNode() {
    if(head == null && head.next ==null) {
        return;
    }
    Node slow = head;
    Node fast = head;
    Node prev = null;
    
    while(fast!=null && fast.next!=null) {
        fast = fast.next.next;
        prev = slow;
        slow = slow.next;
        
    }
    prev.next = slow.next;
    
}
public void printNodes() {
    Node temp = head;
    while(temp!=null) {
        System.out.print(temp.data+"-->");
        temp = temp.next;
    }
}

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        deleteMidNode l = new deleteMidNode();
        l.head = new Node(1);
        l.head.next = new Node(2);
        l.head.next.next = new Node(3);
        l.head.next.next.next = new Node(4);
        l.printNodes();
        
        l.deleteMiddleNode();
        System.out.println("");
        l.printNodes();
        
    }


}

Comments