欢迎来到天天文库
浏览记录
ID:9002759
大小:31.00 KB
页数:4页
时间:2018-04-14
《单链表按位查找的c程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C++课程实训建立线性单链表要有初始化、插入、删除、查找、排序等常用功能的C++程序,必须要有封装性!#includeusingnamespacestd;templateclasslist;templateclassnode{friendlist;private:Tdata;node*next;public:node():data(0),next(NULL){};~node(){}TgetData(){returndata;}node*ge
2、tNext(){returnnext;}};templateclasslist{private:node*head;public:list(){head=newnode;}~list();intinsert(T&);intremove(T&);node*find(T&);voidprint();voidsort();};templateintlist::insert(T&x){node*p=newnode;p->data=x;if(!p)return0;
3、p->next=head->next;head->next=p;return1;}templateintlist::remove(T&x){node*p=find(x);if(!p)return0;node*q=p->next;p->next=q->next;deleteq;return1;}templatenode*list::find(T&x){node*q=head;while(q->next!=NULL){if(q->next->data==x)
4、returnq;q=q->next;}returnNULL;}templatevoidlist::sort(){node*p=head->next,*q;for(;p!=NULL;p=p->next)for(q=p->next;q!=NULL;q=q->next)if(p->data>q->data){Ttemp=q->data;q->data=p->data;p->data=temp;}}templatevoidlist::print(){node*q=head-
5、>next;while(q!=NULL){cout<data;q=q->next;}cout<list::~list(){node*p=head->next;while(p!=NULL){head->next=p->next;deletep;p=head->next;}deletehead;}intmain(){listl;intx;do{cin>>x;//input0exitif(x==0)break;l.insert(x);}while(1)
6、;l.sort();l.print();cin>>x;node*p=l.find(x)->getNext();cout<getData()<
此文档下载收益归作者所有