import java.util.*;
public class QNode {
    int data;
    QNode next;
    public QNode(int data)
    {
        this.data=data;
        next=null;
    }
}
class LL
{
    private QNode start;
    public LL()
    {
        start=null;
    }
    public void insert(int ele)
    {
        QNode p=new QNode(ele);
        if(start==null)
            start=p;
        else
        {
            QNode q=start;
            while(q.next!=null)
                q=q.next;
            q.next=p;
        }
    }
    public int delete() throws Exception
    {
        if(start==null)
            throw new Exception("LL Empty");
        QNode p=start;
        start=start.next;
        return(p.data);
    }
    public void display()
    {
        if(start==null)
        {
            System.out.println("LL Empty");
            return;
        }
        QNode q=start;
        while(q!=null)
        {
            System.out.print(q.data+" ");
            q=q.next;
        }
        System.out.println();
}
}
class LLExp
{
    public static void main(String args[])
    {
        Scanner src=new Scanner(System.in);
        LL obj=new LL();
        while(true)
        {
            int ele;
            System.out.println("Enter choice : \n1.Insert \n2.Delete \n3.Display \n4.Exit");
            int ch=src.nextInt();
            if(ch==4)
            break;
            switch(ch)
            {
                case 1:
                    System.out.println("Enter the element to insert");
                ele=src.nextInt();
                obj.insert(ele);
                obj.display();
                break;

                case 2:try
                {
                    ele=obj.delete();
                    System.out.println("Deleted Element : "+ele);
                }
                catch(Exception e)
                {
                    System.out.println(e);
                }
                obj.display();
                break;

                case 3:obj.display();
                break;

                default:System.out.println("INVALID CHOICE");
            }
        }
}
}

O/P:-

Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
34
34 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
23
34 23 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
78
34 23 78 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
66
34 23 78 66 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
56
34 23 78 66 56 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
1
Enter the element to insert
89
34 23 78 66 56 89 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
2
Deleted Element : 34
23 78 66 56 89 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
2
Deleted Element : 23
78 66 56 89 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
2
Deleted Element : 78
66 56 89 
Enter choice : 
1.Insert 
2.Delete 
3.Display 
4.Exit
4
BUILD SUCCESSFUL (total time: 39 seconds)
