#include<iostream.h> #include<constream.h> template<class T> class LinearList { private: int length; int MaxSize; T *element; public: LinearList(int MaxLinearSize=10); ~LinearList(){delete[]element;} int isEmpty()const{return length==0;} int Length()const{return length;} int Find(int k,T&x)const; int Search(const T&x)const; void Delete(int k,T&x); void Insert(int k,const T&x); void Output()const; }; template<class T> LinearList<T>::LinearList(int MaxListSize) { MaxSize=MaxListSize; element=new T[MaxSize]; length=0; } template<class T> int LinearList<T>::Find(int k,T&x)const { if(k<1||k>length) return 0; x=element[k-1]; return 1; } template<class T> int LinearList<T>::Search(const T&x)const { for(int i=0;i<length;i++) if(element[i]==x) return ++i; return 0; } template<class T> void LinearList<T>::Delete(int k,T&x) { if(Find(k,x)) { for(int i=k;i<length;i++) element[i-1]=element[i]; length--; } else cout<<"out of bounds\n"; } template<class T> void LinearList<T>::Insert(int k,const T&x) { if(k<0||k>length) cout<<"out of bounds\n"; if(length==MaxSize) cout<<"no memory\n"; for(int i=length-1;i>=k;i--) element[i+1]=element[i]; element[k]=x; length++; } template<class T> void LinearList<T>::Output()const { if(isEmpty()) cout<<"list is empty\n"; else for(int i=0;i<length;i++) cout<<element[i]<<"\t"; } void menu() { cout<<"\n MENU\n" ; cout<<"-----------\n"; cout<<"1.Length\n"; cout<<"2.Find\n"; cout<<"3.Search\n"; cout<<"4.Delete\n"; cout<<"5.Insert\n"; cout<<"6.Output\n"; cout<<"-------------\n"; } void main() { int ch; int k,x,len,p; clrscr(); LinearList <int> obj; do { menu(); cout<<"enter choice\t"; cin>>ch; switch(ch) { case 1: len=obj.Length(); if(len==0) cout<<"List is empty\n"; else cout<<"length of linearlist is "<<len<<endl; break; case 2: cout<<"enter k,x(position and value)\n"; cin>>k>>x; p=obj.Find(k,x); if(p==1) cout<<"found"<<endl; if(p==0) cout<<"not found"<<endl; break; case 3: cout<<"enter x(value)\n"; cin>>x; p=obj.Search(x); if(p) cout<<"searching is sucessful and found at"<<p<<endl; else cout<<"searching not sucessful"<<endl; break; case 4: cout<<"enter k,x(position and value)\n"; cin>>k>>x; obj.Delete(k,x); break; case 5: cout<<"enter k,x(index and value)\n"; cin>>k>>x; obj.Insert(k,x); break; case 6: cout<<"elements in the list are:\n\n"; obj.Output(); break; default: cout<<"invalid choice\n"; break; } } while(ch>=1&&ch<=6); getch(); } |
ADB commands for Android
Android
What are C Tokens?
C/C++
Least Recently Used Paging Algorithm
Advanced programs
First In First Out Page Replacement Algorithm
Simple programs
Java Program to find the IP address of the Machine
Basic Programs
Palindrome checking using function overloading
Advanced programs
0123456789011121314151617181920212223242526272829303132″ every time while m ch...
very helpfull......
Drupal is one of these effective software packages that helps people and busin...
sir pls send me project on my mail id...
Its simple and clearing all topics awesom...