set和map的简单用法

1、set(集合)map(映射)都属于关联类容器
都支持查询一个元素是否存在并能够有效地获取元素。
set集合的元素总是从小到大排列,set集合通过二分查找树实现。它具备以下两个特点:
①:独一无二的元素:不存在两个值相等的元素
②:元素值就是关键字本身
2.#include<set>
  using namespace std;
  set<int>::iterator it;
  int a[]={1,2,3,4,5};
  set<int>s2(a,a+5);
  for(it=s2.begin();it!=s2.end();it++){
    cout<<" "<<*it;
  }
3.lower_bound():返回第一个不小于元素x的迭代器;
  upper——bound():返回第一个大于x的迭代器;
  以上两个函数都可以使用二分法实现。 具体实现代码可以看这里:http://www.cnblogs.com/TWS-YIFEI/p/5990976.html1.map也是一种关联容器,也是用来存取数据的,数据的组成包括两部分:数据值和关键字;关键字用来唯一的标识数据元素。
2.  map<char,int>:iterator it;
    map<char,int> first;
    first[‘a‘]=10;
    for(it=first.begin();it!=first.end();it++){
      cout<<(*it).first<<" "<<(*it).second;
      //first,second分别是关键字和数据值。
    }  
时间: 2024-10-11 04:31:53

set和map的简单用法的相关文章

GO的MAP字典简单用法示例

package main import "fmt" type PersonInfo struct { ID string Name string Address string } func main() { var personDB map[string]PersonInfo personDB = make(map[string]PersonInfo) personDB["12345"] = PersonInfo{"12345", "T

leetcode 249 250 set和map的简单用法

leetcode249,利用了STL中的set class Solution { public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { set<int> n1(nums1.begin(),nums1.end()); set<int> n2; for(int i=0;i<nums2.size();i++) { if(n1.find(

python lambda表达式简单用法【转】

python lambda表达式简单用法 1.lambda是什么? 看个例子: g = lambda x:x+1 看一下执行的结果: g(1) >>>2 g(2) >>>3 当然,你也可以这样使用: lambda x:x+1(1) >>>2 可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为: 1 def g(x):2 return x+1 非常容易理解,在这里lambda简化了函数定义

iOS block-base 动画简单用法+关键帧动画设置线性变化速度的问题

本文转载至 http://www.tuicool.com/articles/aANBF3m 时间 2014-12-07 20:13:37  segmentfault-博客原文  http://segmentfault.com/blog/alan/1190000002411296 iOS的各种动画相漂亮,相信这是吸引很多人买iPhone的原因之一.不仅如此,这还是吸引我做iOS开发的一大原因,因为在iOS上给界面实现一些像样的动画实在是太轻松了! 这里就介绍一下iOS的block-based an

Android WIFI 简单用法

随着Wifi的普及,在开发App的时候对wifi的考虑越来越多了.例如程序的升级在wifi下可以省很多流量,在通信软件中的视频通话.可以实现高画质的传输等等,Android提供了WifiManager类来帮助开发者们管理Wifi.下面就简单来说一下WifiManager的简单用法把. 权限: 为了使用WfiManager 我们需要在Androidmanifest.xml 加入权限: //本例中使用了前两个.具体请按照需要添加权限. <uses-permission android:name=&quo

Android中资源文件中的字符串数组string-array简单用法

在Android中,用string-array是一种简单的提取XML资源文件数据的方法. 例子如下: 把相应的数据放到values文件夹的strings.xml文件里,或是其他自定义的xml中都可以,以下操作方法相同. <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="sports"> <item>足球<

expect简单用法

1 #!/usr/expect/bin/expect -f 2 3 4 set loginuser [lrange $argv 0 0] 5 set loginpass [lrange $argv 1 1] 6 set ipaddr [lrange $argv 2 2] 7 set port [lrange $argv 3 3] 8 set timeout [lrange $argv 4 4] 9 set from [lrange $argv 5 5] 10 set to [lrange $ar

Tcpdump 的简单用法

Tcpdump 的简单用法 tcpdump是Linux命令行下使用最广泛的网络分析工具,运行的时候会将网卡运行在混杂模式下,需要root权限才能执行 下面是几个比较常见的参数: -w  保持到指定的文件 -i  指定监听的网卡,缺省显示第一块网卡 -nn 以IP方式显示host -v  显示详细信息 -s  指定数据包大小,缺省是65535 -t  不显示时间 ,缺省是显示时间戳 -c  获取数据包数量,缺省不限制,需要用Ctrl+c来终止 下面是关于命令关键字的说明 1.主要包括host,ne

C++ double转string类型以及MFC控件简单用法

这两天项目需要,测试c++库里面内容.生成jar再给Android调用.我没有学过C++,现在开始记录C++简单用法.测试时候一般都是使用mfc程序来测试,要输入值,显示结果吗.我用的编译环境vs2008. 一.double 转string #include <string> CString strResultx; strResultx.Format(_T("x:%.4f\n"), 89.7887878); 转换结果还是放在strResultx 2.两个字符串相连 CStr