array 2 map
来源:互联网 发布:fanuc数控系统编程代码 编辑:程序博客网 时间:2024/05/05 07:44
Longest Consecutive Sequence
差一点就可以想到了,想到一个数,然后他的左右值,想到map但是,没想到一直查找下去,以为添加并修改就可以了,结果不能保证连续性,实际上,是每次都计算当前值得长度,并保存最大的长度。
class Solution {public: int longestConsecutive(vector<int> &num) { if(num.empty())return -1;map<int,bool> usedmap; for(auto i :num) usedmap[i] = false; int longest = 0; for(auto i : num) { if(usedmap[i]) continue; int length = 1; usedmap[i] = true; for(int j = i + 1; usedmap.end() != usedmap.find(j); ++ j ) { usedmap[j] = true; ++ length; } for(int j = i - 1; usedmap.end() != usedmap.find(j); -- j ) { usedmap[j] = true; ++ length; } longest = max(longest,length); } return longest; }};
Two Sum
回头看之前做的twosum发现自己的思路就很怪,干嘛要排序呢,思路方向错了,就错得很离谱,做出的结果也复杂
class Solution {public: vector<int> twoSum(vector<int> &numbers, int target) { map<int,int> mymap;vector<int> index;int index1,index2;index1 = index2 = 0;for(vector<int>::size_type i = 0; i != numbers.size(); ++ i ){if(mymap.empty())mymap[numbers[i]] = i;else{if(mymap.end() != mymap.find(target - numbers[i])){index1 = mymap.find(target - numbers[i])->second+1;index2 = i+1;break;}elsemymap[numbers[i]] = i;}}index.push_back(index1);index.push_back(index2);return index; }};
0 0
- array 2 map
- Array.map()
- scala基础2-tuple array map
- Array,List,Map
- 重写Array.map()方法
- Array转化为Map
- hive struct\map\array
- js array map
- JavaScript (Array) map 方法
- hive map,struct,array
- list,map,array理解
- 了解Array.prototype.map()
- Array.prototype.map()详解
- JavaScript Array map()方法
- Array, Set, Map
- 集合框架2——泛型、map、collection、Array
- list,set,map和array的最全总结(2)
- 【JS】Array.forEach(遍历) Array.map(映射)
- 位运算 实现加法
- SplitFilename ~ whitespaces
- kmp与kmp扩展
- 代码签名证书伟大的安全措施
- Java动态代理详解
- array 2 map
- Linux grep命令详解
- oracle 行转列 listagg wm_concat
- 仿真软件如何SIMIO对象不同于其他面向对象的建模工具
- Android中Fragment的使用
- EXTJS 窗口Ext.Window()学习笔记
- POJ 1789 (最小生成树)
- java.lang.ClassNotFoundException: javax.el.ELResolver解决方案
- Android数据存储方式(二.2)SharedPreferences