1. 两数之和(Java)

题目描述:

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案。

输入:

nums = [2,7,11,15], target = 9

输出:

[0,1]

解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。

代码实现:

java 复制代码
public class Main{
    public static void main(String[] args) {
        //测试函数
        int[] nums = new int[]{2, 7, 11, 15};
        System.out.println(Arrays.toString(twoSum(nums, 9)));//[0, 1]
    }

    public static int[] twoSum(int[] nums, int target) {
        //最终结果数组
        int[] res = new int[2];
        //标记变量:未得到结果为0,得到结果为1
        int flag = 0;
        //暴力枚举:每一个数和后面的所有数组合相加
        for (int i = 0; i < nums.length - 1; i++) {
            //假定结果的第一个加数
            res[0] = i;
            for (int j = i + 1; j < nums.length; j++) {
                if (nums[i] + nums[j] == target) {
                    //计算得到第二个加数
                    res[1] = j;
                    flag = 1;
                    break;
                }
            }
            //得到目标结果之后,直接跳出
            if (flag == 1) {
                break;
            }
        }
        //返回结果数组
        return res;
    }
}
相关推荐
夏子曦5 分钟前
java虚拟机——频繁发生Full GC的原因有哪些?如何避免发生Full GC
java·开发语言
gogo_hua6 分钟前
JVM系列之OOM观测准备
java·大数据·jvm
m0_6754470818 分钟前
Solon 拉取 maven 包很慢或拉不了,怎么办?
java·maven
武昌库里写JAVA22 分钟前
SpringCloud+SpringCloudAlibaba学习笔记
java·开发语言·算法·spring·log4j
爱编程的小生23 分钟前
SpringBoot Task
java·spring boot·后端
CoderJia程序员甲30 分钟前
重学SpringBoot3-异步编程完全指南
java·spring boot·后端·异步编程
小咖拉眯33 分钟前
第十六届蓝桥杯模拟赛第二期题解—Java
java·数据结构·算法·蓝桥杯·图搜索算法
扬子鳄00834 分钟前
Spring Boot自动配置机制
java·数据库·spring boot
岁岁岁平安36 分钟前
springboot实战(19)(条件分页查询、PageHelper、MYBATIS动态SQL、mapper映射配置文件、自定义类封装分页查询数据集)
java·spring boot·后端·mybatis·动态sql·pagehelper·条件分页查询
Sunyanhui136 分钟前
力扣 最长回文字串-5
算法·leetcode·职场和发展