(一百)体验LeetCode

github demo : https://github.com/happyjiatai/LeetCodeTest/tree/master/1_two_sum

1.搜索

百度一下

第一个链接是leetCode国际版?第二个是中文版,我进入到中文版里去了。

 

2.界面

 

3.题目

随便点第一个两数之和

3.1 编写代码

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

3.2 编写测试用例

勾选自定义测试用例,自己写输入

 

3.3 执行代码

 

3.4 Android studio test

package com.example.a1_two_sum;


public class MyClass {
    public static void main(String args[]){
        Solution solution = new Solution();
        int[] result = solution.twoSum(new int[]{12,32,54,1}, 55);
        if (null == result){
            System.out.println("null");
        }else{
            StringBuilder stringBuilder = new StringBuilder();
            stringBuilder.append("[");
            for(int i : result){
                stringBuilder.append(i);
                stringBuilder.append(",");
            }
            stringBuilder.deleteCharAt(4);
            stringBuilder.append("]");
            System.out.println(stringBuilder);
        }
    }
}

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

 

3.5 提交

 

3.5.1 官方用例

 

3.5.2 官方解答

方法二使用了hashmap省去了暴力遍历的第二层遍历,因为hashmap是通过hash值确定位置的,不需要依次遍历。方法三是在方法二基础上的优化。

 

4. 总结

emmm,一周一题?

相关推荐
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页