#include<iostream.h> class linklist{ private: struct node { int data; node *link; }*p; public: linklist(); void add(int num); void display() ~linklist(); }; linklist::linklist() { p=NULL; } void linklist::add(int num) { node *r,*temp=p; r=new node; r->data=num; if(p==NULL||p->data>num) { p=r; p->link=temp; } else { while(temp!=NULL) { if(temp->data<=num&&(temp->link->data>num||temp->link==NULL)) { r->link=temp->link; temp->link=r; return ; } temp=temp->link; } } }  void linklist::display() { node *temp=p; cout<<endl; while(temp!=NULL) { cout<<temp->data<<" "; cout<<-> temp=temp->link; } printf("%d",p->data); } int linklist::count() { node *temp=p; int c=0; while(temp!=NULL) { temp=temp->link; c++; } return c; } linklist::~linklist() { node *q; while(p!=NULL) { q=p->link; delete p; p=q; } } void main() { linklist l; l.add(5); l.add(1); l.add(6); l.add(4); l.add(7); cout<<"\n elements in the linked list:"; l.display(); cout<<"\n NO:of elements in linked list:"<<l.count(); }