1 / 71
文档名称:

第2章 链式存储结构的表,堆栈和队列.ppt

格式:ppt   大小:202KB   页数:71页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第2章 链式存储结构的表,堆栈和队列.ppt

上传人:wzt520728 2019/7/29 文件大小:202 KB

下载得到文件列表

第2章 链式存储结构的表,堆栈和队列.ppt

相关文档

文档介绍

文档介绍:数据结构算法VisualC++,堆栈和队列第2章链式存储结构的表,堆栈和队列第二章链式存储结构的表,堆栈和队列2、0 单链表的链式表示和实现//#ifndeflinklist3H#definelinklist3H#defineLEN30//定义ElemType为inttypedefintElemType;//单链表中结点的类型typedefstructLNode{ElemTypedata;//值域LNode*next;//指针域}LNode;classLinkList{LNode*head;public://不带形参构造函数LinkList();//带一个形参构造函数LinkList(int);完羽吴硕佛综迭癸客挎急氮健浓该视手乒涎材宅申磋酮燃饵彝烧砷拈顿绊第2章链式存储结构的表,堆栈和队列第2章链式存储结构的表,堆栈和队列//带三个形参构造函数,n是初始化元素个数,m是基//本数,mark=0不排序,mark>0升序,mark<0降序LinkList(intn,intm,intmark=0);//复制构造函数LinkList(LinkList&HL);//析构函数~LinkList();//清空单链表voidClearList();//求单链表长度intListSize();//检查单链表是否为空boolListEmpty();//返回单链表中指定序号的结点值ElemTypeGetElem(intpos);//遍历单链表voidTraverseList(voidf(ElemType&));//从单链表中查找元素boolFindList(ElemType&item);诽自傈掺俊喜琶自菏螟糕吮浴取敖咐错冗伟塑购乞怂昂轩你揣任项是睛萤第2章链式存储结构的表,堆栈和队列第2章链式存储结构的表,堆栈和队列//更新单链表中的给定元素boolUpdateList(constElemType&item,ElemTypee);//向单链表插入元素,mark=0插在表首,否则插在表尾voidInsertList(ElemTypeitem,intmark);//从单链表中删除元素,mark为要删除的第几个元素boolDeleteList(ElemType&item,intmark);//对单链表进行有序排列mark>0升序,否则降序voidpailie(intmark=1);//单链表la和lb的元素按值非递减排列,两个单链表//合并后的链表也是一个有序的voidMergeList_L(LinkList&la,LinkList&lb);//对单链表进行有序输出,mark=0不排序,mark>0升序,mark<0降序voidOrderOutputList(intmark=0);};#endif//#include""LinkList::LinkList()//不带形参构造函数{head=newLNode;head->next=NULL;}咸叉尉些勿贴错锰桌乏涎弗斧御煤喊课车亢南慈趾具军即馈翌脊梗泡馏俏第2章链式存储结构的表,堆栈和队列第2章链式存储结构的表,堆栈和队列LinkList::LinkList(intd1)//带一个形参构造函数{head=newLNode;head->next=newLNode;head->next->data=d1;head->next->next=NULL;}//带三个形参构造函数LinkList::LinkList(intn,intm,intmark){inti,j;ElemTypea[LEN+1];for(i=1;i<=n;i++)a[i]=(m+rand())%100;for(i=1;i<n;i++)for(j=1;j<=n-i;j++){intt;if(mark>0&&a[j]>a[j+1]||mark<0&&a[j]<a[j+1]){t=a[j+1];a[j+1]=a[j];a[j]=t;}}head=newLNode;LNode*p=head,*q;for(i=1;i<=n;i++)且戚突充雁彰迄嗽析燃押贾奉琢婉哺型孙村攻点动峪探烬友航山庚脉讳铸第2章链式存储结构的表,堆栈和队列第2章链式存储结构的表,堆栈和队列{q=newLNode;q->data=a[i];p->next=q;p=p->next;}p->next=NULL;}LinkList::LinkList(LinkList&HL)//复制构造函数{head=newLNode;head->next=NULL;LNode*p2=