数据库 stl
来源:互联网 发布:音乐随心裁软件 编辑:程序博客网 时间:2024/06/06 00:24
std map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下std map内部数据的组织,std map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在std map内部所有的数据都是有序的
#include <map>#include <stdio.h>#include <stdlib.h>#include <iostream>#include <string>#include <algorithm>#define file_r(x) freopen(x,"r",stdin);#define file_w(x) freopen(x,"w",stdout);using namespace std;int main(){//file_r("in.data");//file_w("out.data");map<string,string> data;int ncase, n;scanf("%d",&ncase);string order,number,name;map<string, string>::iterator it;while(ncase--){ scanf("%d",&n); fflush(stdin); while(n--) { cin>>order; if(!order.compare("INSERT")) { cin>>number>>name; data.insert(pair<string,string>(number,name)); } else if(!order.compare("SELETE")) { cin>>number; it = data.find(number); if(it!=data.end()) { cout<<it->first<<' '<<it->second<<endl; } else printf("NO DATA!\n"); } else if(!order.compare("DELETE")) { cin>>number; it = data.find(number); if(it!=data.end()) { data.erase(it); } else printf("NO DATA!\n"); } else if(!order.compare("UPDATA")) { cin>>number>>name; it = data.find(number); if(it!=data.end()) { it->second =name; } else printf("NO DATA\n"); } } for(it=data.begin(); it!=data.end(); it++) cout<<it->first<<' '<<it->second<<endl; data.clear(); printf("\n"); } system("pause");return 0;}
- 数据库 stl
- stl
- stl
- STL
- STL
- STL
- STL
- STL
- STL
- STL
- stl
- STL
- STL
- STL
- STL
- STL
- STL
- STL
- PeekMessage、WaitForSingleObject、PostThreadMessage多线程使用示例
- Au T+D的定义
- forward和redirect区别
- C# WinForm 改变控件在窗体上的显示位置
- android下连接串口
- 数据库 stl
- Fn+F5键 无线通讯选项卡中没有无线网卡控制项,仅有蓝牙
- li元素中包含img元素出现5px空白的解决方法
- 给Android设备增加串口功能
- VC编程功能总结
- 在批处理中提升权限 (UAC开启状态下)
- 国内创业团队推爱闲置:LBS二手物品交易应用
- Android平台和java平台 DES加密解密互通程序及其不能互通的原因 .
- 解决 ORA-01461: can bind a LONG value only for insert into a LONG column