您的位置:首页 > 其它

leetcode每日一题,两数之和

2018-12-17 17:23 113 查看

class Solution {
public int[] twoSum(int[] nums, int target) {
int i=0;int j=0;
if(nums!=null&&nums.length>1){
for(;i<nums.length-1;i++){
for(j=i+1;j<nums.length;j++){
if(target==(nums[i]+nums[j])){

return new int[]{i,j};
}
}
}
}
return null;
}

}
看了一下后面的【官方题解】,有三种方法,我这种属于第一种,暴力破解
O(n^2)。
其他两种都是通过hashmap做的,我想了想,应该再加一个数组也能过达到他那个O(n),不行,还是O(n^2);
但是我看了下hashtable的源码,也是for循环遍历出来的,你用了java自带的工具包,这也没什么里子,纯面子上好看呀。
对hashmap的介绍:https://www.cnblogs.com/skywang12345/p/3310835.html#b2

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: