Two Sum
来源:互联网 发布:手写字体软件 编辑:程序博客网 时间:2024/05/17 20:34
以为只要保证O(n)的时间效率就可以,所以一开始是这样的HashMap做的:
public static int[] twoSum(int[] nums, int target) { int [] v = new int[2]; Map<Integer,Integer> map = new HashMap<Integer, Integer>(); for(int i=0;i<nums.length;i++){map.put( nums[i],i);} for(int key : map.keySet()){ if(map.containsKey(target-key)){ v[0]=map.get(key)+1; v[1]=map.get(target-key)+1; break; } }return v; }
后来发现一直Time Limit Exceeded,无奈就改为遍历一次的。
public static int[] twoSum2(int[] nums, int target) {int[] v = new int[2];Map<Integer, Integer> map = new HashMap<Integer, Integer>();for (int i = 0; i < nums.length; i++) {if(map.containsKey(nums[i])){v[0]=map.get(nums[i])+1;v[1]=i+1;}else{map.put(target-nums[i], i);}}return v; }回头用C++实现一次。
0 0
- Two Sum
- Two Sum
- Two Sum
- two sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Two Sum
- Spring + Quartz 作业调度框架
- 百度地图开发之获取定位地点
- dorado5之SqlMatchRule
- struts2学习——Action
- android下查看内存阀值限制
- Two Sum
- php zookeeper配置管理应用实践
- Android通讯录开发之联系人
- 使用SQLQuery 在Hibernate中使用sql语句
- gloox移植到android平台
- Visual Studio 应用第三方库的设置方法
- 第七章测试报告的生成
- 《静态页面爬虫》读后总结
- 404自动跳转主页的实现