zoukankan      html  css  js  c++  java
  • STL中map,set的基本用法示例

    本文主要是使用了STL中德map和set两个容器,使用了它们本身的一些功能函数(包括迭代器),介绍了它们的基本使用方式,是一个使用熟悉的过程。

    map的基本使用:

    #include "stdafx.h"
    #include<iostream>
    #include<set>
    #include<string>
    #include<vector>
    #include<map>
    
    using namespace std;
    
    int main()                
    {
    	//定义map对象
    	map<string,float> myMap;
    	myMap["jack"]=98.5;
    	myMap["bomi"]=98.0;
    	myMap["Kate"]=97.6;
    
    	map<string,float>::iterator itm;
    	for(itm=myMap.begin();itm!=myMap.end();itm++)
    	{
    		//按照键值与映照的数据输出
    		cout<<(*itm).first<<" : "<<(*itm).second<<endl;
    	}
    
    
    	int k=0;
    	cin>>k;
    	return 0;
    }
    
    set的基本使用示例:

    #include "stdafx.h"
    #include<iostream>
    #include<set>
    #include<string>
    #include<vector>
    
    using namespace std;
    
    int main()                
    {
    	set<int> mySet;
    	mySet.insert(8);
    	mySet.insert(1);
    	mySet.insert(12);
    	mySet.insert(6);
    	mySet.insert(8);            //这里因为前面已经插入了8,重复元素,不会插入。
    
    	set<int>::iterator its;  //set容器的迭代器
    
    	cout<<"正向遍历:"<<" ";
    	for(its=mySet.begin();its!=mySet.end();its++)   //正向遍历
    	{
    		cout<<*its<<" ";
    	}
    	cout<<endl<<"反向遍历:"<<" ";
    
    	set<int>::reverse_iterator rit;            //set的逆向迭代器
    	for(rit=mySet.rbegin();rit!=mySet.rend();rit++)
    	{
    		cout<<*rit<<" ";
    	}
    
    	//删除键值为6的元素
    	mySet.erase(6);
    	cout<<endl<<"删除之后的反向遍历:"<<" ";
        for(rit=mySet.rbegin();rit!=mySet.rend();rit++)
    	{
    		cout<<*rit<<" ";
    	}
    
    	//set中元素的检索
    	mySet.insert(17);
    	mySet.insert(10);
    
    	cout<<endl;
    	its=mySet.find(10);            //使用迭代器来查找,没找到就返回end().
    	if(its!=mySet.end()) cout<<"找到了"<<*its<<endl;
    	else cout<<"没有找到查询的元素"<<endl;
    
    	its=mySet.find(100);
        if(its!=mySet.end()) cout<<"找到了"<<*its<<endl;
    	else cout<<"没有找到查询的元素"<<endl;	
    
    
    	int k=0;
    	cin>>k;
    	return 0;
    }
    

    一些细节的地方说明,请看源码中的注释,谢谢!



  • 相关阅读:
    echarts 图表tooltip数据默认是按照series中的数据位置排序。 鼠标移入排序
    三位加,号
    保留整数的方法
    水印vue
    vue 省市区
    平行四边形css
    css 文字样式
    js练习题
    axios 之cancelToken原理以及使用 取消上一次请求
    身份证获取生日性别
  • 原文地址:https://www.cnblogs.com/NewWork/p/3260543.html
Copyright © 2011-2022 走看看