c++ stl简单用法分析和总结.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++ STL Adaptor stack 和 queue 的使用1.Stack top()返回栈顶元素,并不移除这个元素empty()如果栈空返回 true,否则 false size()栈的大小 void push()插入元素到栈顶void pop()移除栈顶元素#includeiostream #includestack using namespace std; void main() { stackchar v; for(int i=0;i10;i++) v.push(i+97); coutv.size()endl; while(!v.empty()) { coutv.top() ; v.pop(); } } 2.queue empty()判空 front()返回队头元素pop()删除对头元素back()返回队尾元素push()在队尾加入元素size()大小 #includeiostream #includequeue using namespace std; int main() { queueintq; for(int i=0;i5;i++)q.push(i); while(!q.empty()) //or while(q.size()) { coutq.front(); q.pop(); } return 0; } //树的非递归遍历,层次遍历什么的,不用自己再写栈和队列了,直接利用STL 中的就行了 头文件:#include algorithm using namespace std; 头文件: #include algorithm using namespace std; 1.默认的 sort 函数是按升序排。对应于 1) sort(a,a+n); //两个参数分别为待排序数组的首地址和尾地址2.可以自己写一个 cmp 函数,按特定意图进行排序。对应于 2) 例如: int cmp( const int a, const int b ){ if( a b ) return 1; else return 0; } sort(a,a+n,cmp); 是对数组 a 降序排序又如: int cmp( const POINT a, const POINT b ){ if( a.x b.x ) return 1; else if( a.x == b.x ){ if( a.y b.y ) return 1; else return 0; } else return 0; } sort(a,a+n,cmp); 是先按 x 升序排序,若 x 值相等则按 y 升序排 与此类似的还有 C 中的 qsort,以下同附上 qsort 的使用方法: #include stdlib.h 格 格 式 qsort(array_name,data_number,sizeof(data_type),co mpare_function_name) (void*)bsearch (pointer_to_key_word,array_name,find_number, sizeof(data_type),compare_function_name) e.g. int Cmp(const void*a,const void *b) { int*pa=(int*)a,*pb=(int*)b; if(*pa*pb) return 1; else if (*pa==*pb) return 0; else return -1; } qsort(data,N,sizeof(int),Cmp); // 对 int 型数组进行快速排序(非降序排列) p=(int*)bsearch(a,data,n,sizeof(int),Cmp); bool compare(int a,int b) bool compare(int a,int b) { { return ab; //升序排列,如果改为return ab,则为降序 } 标准库 标准库Vector 类型 使用需要的头文件: #include vectorVector:Vector #include vector Vector:Vector 是一个类模板。不是一种数据类型。 Vectorint是一种数据类型。 一、 定义和初始化 VectorT v3(n,i);//v3 包含 n 个值为i 的元素VectorT v1; //默认构造函数v1 为空 VectorT v3(n,i);//v3 包含 n 个值为i 的元素 VectorT v4(n); //v4 含有 n 个值为 0 的元素 二、 值初始化1 二、 值初始化 1 如果没有指定元素初始化式,标准库自行提供一个初始化值进行值初始化。 2 如果保存的式含有构造函

文档评论(0)

hao187 + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档