数据结构与算法第03章

数据结构与算法第03章

ID:34379267

大小:237.55 KB

页数:45页

时间:2019-03-05

数据结构与算法第03章_第1页
数据结构与算法第03章_第2页
数据结构与算法第03章_第3页
数据结构与算法第03章_第4页
数据结构与算法第03章_第5页
资源描述:

《数据结构与算法第03章》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、{êâ((C++)Æ¡1nÙ:5L2009c1nÙ:5L•½Â•þ•üóL•Þ!:VóL•·óL•ÄS+n•Ý•é¡Ý•DÕÝ1½ÂList=(D,S)Ù¥D={d1,d1,···,dn},n≥0(d1,d2),(d1,d3),···,(d1,dn),(d2,d3),···,(d2,dn),S=···,···,···,(dn−1,dn)'XS±w¤5S'Xµd1≺d2≺···≺dn2cª,U¡di−1dicª.¡di+1diU.d1Ãcª§dnÃU.D¥a.±´?¿.S¥kn(n−1)/2.3^S5L

2、:þ(Vector)^Ônþ¬ëYS5gêâa0,···,an−1a0a1······an−1^m^5NymS'X.4Vectora¤CþÚE¼êtemplate//TUk²Û¼êstructVector{T*elem_;intsize_;intcapacity_;Vector(intn=0,Tconst&t=T()):elem_(0),size_(0),capacity_(0){if(n>0){elem_=(T*)malloc(n*sizeof(T));uninitialized_fill(elem_,elem_+n,

3、t);size_=capacity_=n;}}virtual~Vector(void){free(elem_);}//Ù¦};5Vectoragã¼êtemplatestructVector{boolempty(void)const{returnsize_==0;}intsize(void)const{returnsize_;}};6VectoraSftemplatestructVector{typedefT*Iterator;Iteratorbegin(void){returnelem_;}Iteratorend

4、(void){returnelem_+size_;}};7¼þ¤templatestructVector{T&front(void){returnelem_[0];}T&back(void){returnelem_[size_-1];}T&operator[](intn){//0<=nstructVector{voidpop_back(void){--size_;}voiderase(Iteratorpos){memmove(pos,pos+1

5、,sizeof(T)*(elem_+--size_-pos));}};9þ;+ntemplatestructVector{voidreserve(intn){if(n>capacity_){elem_=(T*)realloc(elem_,n*sizeof(T));uninitialized_fill(elem_+size_,elem_+n,T());capacity_=n;}}protected:boolfull(void)const{returnsize_==capacity_;}intnext_capacity(void)const{re

6、turncapacity_<=0?1:2*capicity_;}};10þV¼êtemplatestructVector{voidpush_back(Tconst&t){//V3Üif(full())reserve(next_capacity());elem_[size_++]=t;}voidinsert(Iteratorpos,Tconst&t){//V3poscif(full()){intconstoffset=pos-elem_;reserve(next_capacity());pos=elem_+offset;}memmove(

7、pos+1,pos,sizeof(T)*(elem_+size_++-pos));*pos=t;}};11þÙ¦¤templatevoidVector::resize(intn,Tconst&t=T()){reserve(n);if(size_voidswap(Vector&a,Vector&b){std::swap(a.elem_,b.elem_);std::swap(a.si

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

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

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