MergeRecord_C++中map的使用
//============================================================================
// Name : TTTest.cpp
// Author :
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================ #include <iostream>
#include <stdlib.h>
#include <map>
typedef struct TIME_STRU {
int nIndex; /* 表索引 */
int nValue; /* 值 */
} TABLE_RECORD; void MergeRecord(TABLE_RECORD* pOriRecord, int nOriRecordNum,
TABLE_RECORD* pMergeRst, int* pnMergeRecordNum); using std::cout;
using std::endl;
using std::map;
using std::make_pair; void MergeRecord(TABLE_RECORD* pOriRecord, int nOriRecordNum,
TABLE_RECORD* pMergeRst, int* pnMergeRecordNum) {
map<int, int> inMap; for (int i = ; i < nOriRecordNum; ++i) {
auto ret = inMap.insert(make_pair(pOriRecord[i].nIndex, pOriRecord[i].nValue));
if(!ret.second) {
// 或者直接+=即可
inMap[pOriRecord[i].nIndex] += pOriRecord[i].nValue);
}
}
cout << inMap.size() << endl;
cout << inMap[] << endl; return;
} int main() {
// TABLE_RECORD pOriRecord[] = { { 1, 3 }, { 2, 3 }, { 2, 8 } };
// cout << pOriRecord[0].nIndex << endl;
//
// int nOriRecordNum = sizeof(pOriRecord) / sizeof(pOriRecord[0]);
// cout << nOriRecordNum << endl;
//
// TABLE_RECORD* pMergeRst;
// int nMergeRecordNum = 0;
// int* pnMergeRecordNum = &nMergeRecordNum;
// MergeRecord(pOriRecord, nOriRecordNum, pMergeRst, pnMergeRecordNum);
int ttt = -;
char s[] = { };
itoa(ttt, s, ); cout << s <<endl;
return ;
}
MergeRecord_C++中map的使用的更多相关文章
- java8中map的meger方法的使用
java8中map有一个merge方法使用示例: /** * 打印出包含号码集的label的集合 * * @param args */ public static void main(String[] ...
- 【转】Python 中map、reduce、filter函数
转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ...
- C++ STL中Map的按Key排序和按Value排序
map是用来存放<key, value>键值对的数据结构,可以很方便快速的根据key查到相应的value.假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区 分),我们用map来进 ...
- STL中map与hash_map的比较
1. map : C++的STL中map是使用树来做查找算法; 时间复杂度:O(log2N) 2. hash_map : 使用hash表来排列配对,hash表是使用关键字来计算表位置; 时间复杂度:O ...
- STL中map与hash_map容器的选择收藏
这篇文章来自我今天碰到的一个问题,一个朋友问我使用map和hash_map的效率问题,虽然我也了解一些,但是我不敢直接告诉朋友,因为我怕我说错了,通过我查询一些帖子,我这里做一个总结!内容分别来自al ...
- C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET
C++ STL中Map的相关排序操作:按Key排序和按Value排序 - 编程小径 - 博客频道 - CSDN.NET C++ STL中Map的相关排序操作:按Key排序和按Value排序 分类: C ...
- 关于 Go 中 Map 类型和 Slice 类型的传递
关于 Go 中 Map 类型和 Slice 类型的传递 Map 类型 先看例子 m1: func main() { m := make(map[int]int) mdMap(m) fmt.Printl ...
- Js中Map对象的使用
Js中Map对象的使用 1.定义 键/值对的集合. 2.语法 mapObj = new Map() 3.备注 集合中的键和值可以是任何类型.如果使用现有密钥向集合添加值,则新值会替换旧值. 4.属性 ...
- Python中map函数
1.简介 python 提供内置函数map(), 接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回.例如: (1)对于list [1, 2 ...
随机推荐
- word域3
WORD是文字处理软件,我们在日常处理一些文字时经常遇到一些问题,如:各种公式的录入,尽管Word都提供了"公式编辑器",但其插入的却是"对象",有时排版会感觉 ...
- Extjs MVC学习随笔01
Extjs Mvc模式下的整个MVC框架体系即下图: 包含了Controller(实现方法层),Store(数据来源管理层),View(页面布局层).之所以用MVC我想是因为减轻针对某一页面的单一的J ...
- jQuery 学习笔记_01
jQuery是一个简洁快速灵活的JavaScript框架,能让你在网页上简单的操作文档.处理事件.实现特效并为Web页面添加Ajax交互. 1 jQuery大多是基于 document 一个或多个元素 ...
- js 时间格式化 代码
Date.prototype.Format = function (fmt) { //author: meizz var o = { &quo ...
- Compare接口
1.Comparable接口 此接口强行对实现它的每个类的对象进行整体排序.此排序被称为该类的自然排序 ,类的 compareTo 方法被称为它的自然比较方法 .实现此接口的对象列表(和数组)可以通过 ...
- DataTable转换为Json字符串的三种方法
//第一种:使用StringBuilder public string DataTableToJson(DataTable table) { var JsonString = new StringB ...
- ubuntu 编译源码坏境配置
git checkout -b newlocal origin/q01v31source build/envsetup.shlunch msm8916_32-usermake -j4 make -j4 ...
- matlab 视频转换到图像并保存
图像处理中像Adas.车辆检测等都需要采用视频文件比较好处理一点,利用帧差法.背景减法.光流法等,那么将视频文件转换到图像文件怎么做呢?话不多说,见代码一目了然: %================= ...
- sublime 3 安装go环境
安装go环境是在go已经安装的情况下, 1 首先安装 Package Control ctrl + · 打开sublime 命令行模式 复制粘贴以下代码 import urllib.request,o ...
- 多线程学习中的Tips
ParameterizedThreadStart委托与ThreadStart委托,非常相似,但ParameterizedThreadStart委托是面向带参数方法的.注意ParameterizedTh ...