2016.07.13-vectorvectorint应用2——Two Sum扩展
收获:
vector<vector<int> >res,不能直接用res[j].push_back(number),因为res[j]是空的,没有初始化
可以先定义 vector<int> inNumer, res.push_back(inNumber)即可。
Two Sum中仅仅找出一组符合的输出即可,我希望将数组中所有符合的组合都输出。
1 #include "stdafx.h" 2 #include "vector" 3 #include "map" 4 #include "iostream" 5 #include "unordered_map" //unordered_map的头文件 6 using namespace std; 7 8 class MyClass 9 { 10 public: 11 vector<vector<int> > twoSum(vector<int> &nums, int target) 12 { 13 unordered_map<int, int> hash; //初始化名为hash的hash table,<key,value>均为int型 14 int size = nums.size(); 15 vector<vector<int> > res; //先定义一个vector<vector<int> > 存放所有符合条件的组合 16 vector<int> inIt; //存放每一个符合条件的组合 17 int j = 0; 18 for (int i = 0; i < size; i++) 19 { 20 int numToFind = target - nums[i]; 21 if (hash.find(numToFind) != hash.end()) 22 { 23 inIt.push_back(hash[numToFind]); //先将每组的数放入到inIt中 24 inIt.push_back(i); 25 res.push_back(inIt); //将这个组放入到res中 26 inIt.clear(); //清除每组的值 27 } 28 hash[nums[i]] = i; //将vector中的值放到map中 29 } 30 return res; 31 } 32 }; 33 34 int _tmain(int argc, _TCHAR* argv[]) 35 { 36 vector<int> nums = { 1, 2, 3, 4, 4, 9, 8, 10 }; 37 int target = 5; 38 vector<vector<int> > res; 39 MyClass solution; 40 res = solution.twoSum(nums, target); 41 int size = res.size(); 42 for (int i = 0; i < size; i++) 43 { 44 int vsize = res[i].size(); 45 cout << "["; 46 for (int j = 0; j < vsize; j++) 47 { 48 cout << res[i][j] << " "; 49 } 50 cout << "]"; 51 } 52 cout << endl; 53 system("pause"); 54 return 0; 55 }
转载于:https://www.cnblogs.com/zhuzhu2016/p/5665898.html
2016.07.13-vectorvectorint应用2——Two Sum扩展相关推荐
- 我的阅书记录及相关专业书籍推荐(更新于2016.07)
前不久在整理自己的知识库,发现有个知识夹里记录了自己所看过书的信息,但是很乱,也没有分类.经过一个下午的整理,把这些书按照时间和来源进行了分类,这样更方便以后查看.现在回忆大学时代所看过的书大都还做了 ...
- 纪中2016.8.13比赛不明总结
** 纪中2016.8.13比赛不明总结 (妈妈说要低调) ** ** 第一次用markdown. 总结: 估分:100+100+100+10=310(估大了) 实际:100+100+58.3+10= ...
- 【第五组】头脑风暴+核心竞争力+NABCD+个人(用例+功能+技术说明书) 最后修改时间 2017.07.13...
2017.07.13版 因为对之前版本做了较多修改,所以重新发了,并且在博客下方保留原有版本作为记录. 头脑风暴结果: 刚开始我们无法确定要做一个什么样的应用程序,总结之前可视化课程的作业,我们提出了 ...
- 2010.07.13_19:30
又是地铁中,音乐在响,离目的地一半,又一天上班结束. 转载于:https://www.cnblogs.com/sunxi2003/archive/2010/07/13/1776724.html
- 问题六十七:ray tracing学习总结(2016.11.13, 2017.02.05)
从2016.11.13开始接触ray tracing到今天2017.02.05,差不多80天的时间.截至当前,学习ray tracing的过程,也是我重新找回自己或者说是"find what ...
- 张珺 2015/07/13 个人文档
姓名 张珺 日期 2015/07/13 主要工作及心得 今天主要和任笑萱一起完成了对客户端中提供者的调试以及数据库的修改工作. 通过今天的调试工作,我对整个项目有了更深入的认识,对于用java编写客户 ...
- 哔哩哔哩“2021.07.13 我们是这样崩的”报告的学习-1
哔哩哔哩"2021.07.13 我们是这样崩的"报告的学习-1 这份报告是我学计算机两年来第一次真实看到大厂的员工到底在干什么.出现了很多专有名词,以及当前最先进的互联网企业的应用 ...
- 21 07 13学习总结
21.07.13学习总结 Column: July 13, 2021 Tags: learning experience LOL的终极魔典真好玩(逃), 今天B站还被拿下了, 笑嘻了 00:30-03 ...
- 苏嵌学习日志03 07.13
学习日志 姓名:刘易中 日期:2018/07/13 今日学习任务 结构体.结构体和链表.内存管理.关键字union.enum.typedef等. 今日任务完成情况 (详细说明本 ...
最新文章
- 80070583类不存在_Java自学-接口与继承 内部类
- python利器怎么用-Python爬虫利器二之Beautiful Soup的用法
- 任意输入一个整数反转输出
- 《税务登记管理办法》
- ajax工具怎么安装,AJAX工具
- 深度学习在CV领域的进展以及一些由深度学习演变的新技术
- 一个智能运维算法测试方法
- c++思维导图_必看|用好思维导图,别神话思维导图
- 3Ddungeon-------三维搜索-----偷个懒 把 亡命逃窜 的代码修改了一下 拿来用了
- Go语言学习笔记(一) : 搭建Windows下的Go开发环境
- 学习笔记-行政区划匹配缺失补全
- java layout各布局_java-Layout(布局管理器)
- iOS人脸识别Demo
- 黑客游戏之Monyer系列
- 【0CTF/TCTF2021预选】[Misc] pypypypy Sloth writeup python字节码编程
- MC33063电源啸叫
- 千牛通知栏常驻是什么意思_我告诉你小米常驻通知是什么意思
- win10下CUDA版本卸载与更新
- Big Faceless:PDF Viewer for JAVA Crack
- 设计模式(10)——策略模式