静态数据表类定义

静态数据表类定义

ID:10262862

大小:383.50 KB

页数:16页

时间:2018-06-14

静态数据表类定义_第1页
静态数据表类定义_第2页
静态数据表类定义_第3页
静态数据表类定义_第4页
静态数据表类定义_第5页
资源描述:

《静态数据表类定义》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第9章排序静态数据表类定义#includeconstintDefaultSize=100;templateclassdataList//数据表的前视声明templateclassElement{//数据表元素类的定义friendclassdataList;private:Typekey;//排序码fieldotherdata;//其它数据成员public:TypegetKey(){returnkey;}//取当前结点的排序码voidsetKey(constTypex){ke

2、y=x;}//将当前结点的排序码修改为xElement&operator=(Element&x)//结点x的值赋给this{key=x->key;otherdata=x->otherdata;}intoperator==(Type&x){returnkey==x->key;}//判this与x相等intoperator<=(Type&x){returnkey<=x->key;}//判this小于或等于xintoperator>(Type&x){returnkey>x->key;}//判this大于xintoperator<(Ty

3、pe&x){returnkey>x->key;}//判this小于x}templateclassdataList{//用顺序表来存储待排序的元素,这些元素的类型是Typeprivate:Element*Vector;//存储待排序元素的向量intMaxSize,CurrentSize;//最大元素个数与当前元素个数intPartition(constintlow,constinthigh)//用于快速排序的一次划分算法public:datalist(intMaxSz=DefaultSize):MaxSize(Maxsz

4、),CurrentSize(0){Vector=newElement[MaxSize];}//构造函数intlength(){returnCurrentSize;}Element&operator[](inti){returnVector[i];}voidswap(Element&x,Element&y)//交换x,y{Elementtemp=x;x=y;y=temp;}voidSort();//排序}静态链表类定义templateclassstaticlinkList;

5、//静态链表类的前视声明templateclassElement{//静态链表元素类的定义friendclassstaticlinkList;private:Typekey;//排序码,其它信息略intlink;//结点的链接指针public:16第9章排序TypegetKey(){returnkey;}//取当前结点的排序码voidsetKey(constTypex){key=x;}//将当前结点的排序码修改为xintgetLink(){returnlink;}//取当前结点的链接指针voidsetLink(cons

6、tintptr){link=ptr;}//将当前结点的链接指针置为ptr}templateclassstaticlinkList{//静态链表的类定义private:Element*Vector;//存储待排序元素的向量intMaxSize,CurrentSize;//向量中最大元素个数和当前元素个数public:dstaticlinkList(intMaxsz=DefaultSize):MaxSize(Maxsz),CurrentSize(0){Vector=newElement[Maxsz];}}9-1

7、什么是内排序?什么是外排序?什么排序方法是稳定的?什么排序方法是不稳定的?【解答】内排序是排序过程中参与排序的数据全部在内存中所做的排序,排序过程中无需进行内外存数据传送,决定排序方法时间性能的主要是数据排序码的比较次数和数据对象的移动次数。外排序是在排序的过程中参与排序的数据太多,在内存中容纳不下,因此在排序过程中需要不断进行内外存的信息传送的排序。决定外排序时间性能的主要是读写磁盘次数和在内存中总的记录对象的归并次数。不稳定的排序方法主要有希尔排序、直接选择排序、堆排序、快速排序。不稳定的排序方法往往是按一定的间隔移动或交换记录对象的位置,从而可能

8、导致具有相等排序码的不同对象的前后相对位置在排序前后颠倒过来。其他排序方法中如果有数据交换,只

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。