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;
    }
}
相关推荐
列星随旋34 分钟前
线段树和树状数组的学习
学习·算法
500842 小时前
昇腾 CANN 的五层架构,到底分了哪五层
java·人工智能·分布式·架构·ocr·wpf
摇滚侠2 小时前
Java 零基础全套教程,File 类与 IO 流,笔记 177-178
java·开发语言·笔记
全糖可乐气泡水2 小时前
Codex适配国产信创环境安装部署与技术适配全解析
开发语言·git·python·算法·百度
雨落在了我的手上2 小时前
初始java(十):类和对象(⼆)
java·开发语言
h_a_o777oah3 小时前
状态机+划分型 DP :深度解析K-划分问题下 DP 状态的转移逻辑(洛谷P2679 P2331 附C++代码)
c++·算法·动态规划·acm·状态机dp·划分型dp·滚动数组优化
05候补工程师3 小时前
从算法理想向工程现实的跨越:SLAM 核心架构、思维误区与 Nav2 实战避坑指南
人工智能·算法·安全·架构·机器人
莫雪歌3 小时前
Java AI 应用开发实践:基于 Spring Boot 实现 Chat、Memory、RAG 与 Tool Calling
java·aigc
SmartBrain4 小时前
AI全栈开发(SDD):慢病管理系统工程级设计
java·大数据·开发语言·人工智能·架构·aigc
梦想CAD控件4 小时前
网页端对DWG图纸进行预览与批注(CAD轻量化)
java·前端·javascript