第十五周项目:范型程序

来源:互联网 发布:landmark软件安装 编辑:程序博客网 时间:2024/06/06 19:39
/* *Copyright(c)2016.烟台大学计算机学院 *All right reserved. *文件名称:test.cpp *作者:黄金婵 *完成日期:2016年6月24日 *版本号:v1.0 * *问题描述: *程序输入: *程序输出: */#include <algorithm>#include<set>#include<iterator>#include<iostream>using namespace std;int main(){    multiset<int>eg1;//插入    eg1.insert(1);    eg1.insert(100);    eg1.insert(5);    eg1.insert(1);//是否插入    eg1.insert(10);    eg1.insert(9);//遍历set,可以发现元素是有序的    multiset<int>::iterator set_iter=eg1.begin();    cout<<"Set named eg1:"<<endl;    for(; set_iter!=eg1.end(); set_iter++)        cout<<*set_iter<<" ";    cout<<endl;//使用size()函数可以获得当前元素个数    cout<<"Now there are "<<eg1.size()<<" elements in the set eg1"<<endl;    if(eg1.find(200)==eg1.end())//find()函数可以查找元素是否存在        cout<<"200 isn't in the set eg1"<<endl;    return 0;}


知识点总结:


在用 multiset 的时候,同样需要引用头文件 "#include <set>"。

multiset 多重集合容器是一个可容纳重复元素键值的有序关联容器。与 set 容器一样,使用红黑树作为容器的内部数据结构,元素的搜索操作都是具有对数级的算法时间复杂度。它的 find 和 equal_range 函数,可搜索出某一键值下的所有元素位置。
说得通俗点,multiset 是比 set 更复杂一点点的容器。下面不重复介绍 multiset 其他的概念和函数,直接来几行代码。

0 0
原创粉丝点击