1.tow sum

2023-05-16

文章目录

      • 题目
      • c++版本
      • java版本
      • 利用hashmap
      • 正确做法

题目

  1. Two Sum

Easy

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

Example:

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

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

c++版本

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        vector<int> ivec;
        for(int i = 0; i < nums.size() - 1; i++){
            for(int j = i + 1; j < nums.size(); j++)
                if(nums[i] + nums[j] == target){
                    ivec.push_back(i);
                    ivec.push_back(j);
                    break;
                }
        }
        return ivec;
    }
};

java版本

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

时间复杂度为O(n^2)

利用hashmap

错误做法

在这里插入图片描述

改进
在这里插入图片描述

正确做法

class Solution {
    public int[] twoSum(int[] nums, int target) {
        int[] ret = new int[2];
        HashMap<Integer,Integer> map = new HashMap<>();
     
        for(int i = 0; i <  nums.length; i++){
            int diff =  target - nums[i];
            if(map.containsKey(diff)){
                ret[0] = i;
                ret[1] = map.get(diff);
                break;
            }
            map.put(nums[i],i);//以nums[i]为键
        }
        return ret;
    }
}

时间复杂度为O(n)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

1.tow sum 的相关文章

  • 返回数字的总和(正数或负数)

    我需要创建一个函数 它接受一个数字并返回其数字之和 如果该数字为负数 则在添加数字时第一个数字应被视为负数 这就是我所拥有的 var arrx var oper var others 0 function sumDigits num you
  • 求矩阵中不同行和列的元素总和的最大值

    我有一个 nxm 矩阵 我需要找到不同行和列中其值之和的最大值 例如考虑以下矩阵 m1 m2 m3 n1 1 2 3 n2 4 5 6 n3 7 8 9 n4 10 11 12 最大值为 12 8 4 24 请注意 查找最大值并消除属于该列
  • MySQL JOIN 与多个表和 SUMS

    我正在尝试创建一个查询 该查询将从我正在创建的计费系统的四个表中获取信息 我有以下表格 表发票 InvoiceID PK ClientID Date Status 桌面客户端 ClientID PK ClientName 表发票项目 Ite
  • 对数字中的数字求和的最快方法

    给定一个很大的数字 例如9223372036854775807 Int64 MaxValue 对数字求和的最快方法是什么 目前我正在 ToStringing 并将每个字符重新解析为int num ToString Sum c gt int
  • 沿轴对张量进行火炬求和

    如何对张量的列求和 torch Size 10 100 gt torch Size 10 最简单和最好的解决方案是使用torch sum 对张量的所有元素求和 torch sum x gives back a scalar 对所有行 即每列
  • 是否可以跳过“+”运算符中的 NA 值?

    我想用 R 计算方程 我不想使用该函数sum因为它返回 1 值 我想要完整的值向量 x 1 10 y c 21 29 NA x y 1 22 24 26 28 30 32 34 36 38 NA x 1 10 y c 21 30 x y 1
  • sum 函数如何在 python 中与 for 循环一起工作[重复]

    这个问题在这里已经有答案了 我在python中使用sum函数 我很清楚它的一般结构sum 可迭代 开始 但我无法理解以下代码背后的逻辑 test sum 5 for i in range 5 print output test 输出 25
  • 在 numpy 中查找对角线和(更快)

    我有一些board像这样的 numpy 数组 array 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0
  • 如何在 SQL 中汇总从子级到父级的树状结构中的数据?

    我有一个查询 要求在树状结构中选择每个部门的金额 我想显示孩子们各自父母的总金额 是否可以在不使用游标的情况下将其存档在查询中 以下是要总结的数据结果集 完整的示例也可以在sqlfiddle http sqlfiddle com 4 ea0
  • pandas 中的 .sum() 方法给出不一致的结果

    我有一个大的 DataFrame 大约 4e 07 行 总结时 我得到2 显着不同的结果我是否做总和之前或之后列选择 另外 类型变化从 float32 到 float64 即使总数均低于 2 31 df col1 col2 col3 sum
  • 单个查询中多个日期范围的总和?

    我有以下查询 SELECT SUM balance transactions fee AS sum id FROM balance transactions JOIN charges ON balance transactions sour
  • Tensorflow unsorted_segment_sum 维度

    我正在使用tf unsorted segment sumTensorFlow 的方法 当我作为数据给出的张量只有一行时 它工作得很好 例如 tf unsorted segment sum tf constant 0 2 0 1 0 5 0
  • 在laravel中编写查询join sum groupby

    请帮我写查询 我有 2 个表 项目 和 债务 债务 表有 id project id currency list total 1 1 1 1000 2 1 2 500 3 2 1 1000 4 2 2 500 我需要编写查询以从项目中获取
  • 如何对一组和进行求和? SQL Server 2008

    我有一个查询sum像这样 SELECT Table1 ID SUM Table2 Number1 Table2 Number2 AS SumColumn FROM Table1 INNER JOIN Table3 ON Table1 ID
  • 如何使用 Angular 计算表格列的总和并在页脚中显示?

    I am trying to show the total of the column values in table footer using Angular
  • 使用 SUM() 而不对结果进行分组

    我已经读过 this https stackoverflow com questions 2381053 how to apply a sum operation without grouping the results in sql 但无
  • Oracle SQL 上的条件 SUM

    我通过以下方式获得数据 ITEM LOCATION UNIT RETAIL QUANTITY 100 KS 10 10 200 KS 20 30 我想要正数量的总和 数量 gt 0 和负数量的总和 数量 如何根据条件获得这些列的总和 您可以
  • 在 Rails 控制台中将大十进制转换为字符串

    我试图让我的控制台打印出我所有地点价目表定价的总和 我试图通过控制台完成此任务 但得到一个 BigDecimal 作为结果 纠结于如何将此结果转换为清晰的字符串或整数 Results Location pluck rate card sum
  • 根据第二列求和并有条件地计数

    我在试图解决这个看似简单的问题时感到沮丧 我有一个像这样的数据集 df structure list Year c 2015L 2015L 2015L 2015L 2015L 2015L 2015L 2015L 2015L 2015L 20
  • Python 单行代码

    我想要用 Python 编写以下代码的单行解决方案 但是如何实现呢 total 0 for ob in self oblist total sum v amount for v in ob anoutherob 它返回总价值 我想要它是单行

随机推荐

  • 1230---KVM Windows 虚拟机磁盘如何快速扩容

    KVM Windows 虚拟机磁盘如何快速扩容 前言 xff1a 由于KVM虚拟机直接构建于宿主机内核之上 xff0c 对于充分利用宿主机硬件性能有天然的优势 网上针对KVM Linux 虚拟机运维的文章很多 xff0c 但针对KVM Wi
  • Android中的IPv6

    什么是IPv6 IPv6 的全称是Internet Protocol version 6 Internet Protocol 译为 互联网协议 xff0c 所以 IPv6 就是互联网协议第6版 它对比于 IPv4 所带来的是地址池的扩容 x
  • 浅谈Android下的注解

    什么是注解 java lang annotation xff0c 接口 Annotation xff0c 在JDK5 0及以后版本引入 注解是代码里的特殊标记 xff0c 这些标记可以在编译 类加载 运行时被读取 xff0c 并执行相应的处
  • 浅析Java中的final关键字

    一 final关键字的基本用法 在Java中 xff0c final关键字可以用来修饰类 方法和变量 xff08 包括成员变量和局部变量 xff09 下面就从这三个方面来了解一下final关键字的基本用法 1 修饰类 当用final修饰一个
  • volatile与Java内存模型

    1 volatile特点 volatile的两大特点是可见性和有序性 xff1b volatile的内存语义 xff1a 当写一个volatile变量时 xff0c JMM会把该线程对应的本地内存中的共享变量值立即刷新回主内存中 当读一个v
  • 隐藏Detected problems with API compatibility警告弹窗

    如果在Android9 0亦即API 28或以上的系统中运行debug app时 xff0c 出现如下警告弹窗 xff1a Detected problems with API compatibility visit g co dev ap
  • JAVA中枚举如何保证线程安全

    枚举类型到底是什么类呢 xff1f 是enum吗 xff1f 明显不是 xff0c enum就和class一样 xff0c 只是一个关键字 xff0c 他并不是一个类 xff0c 那么枚举是由什么类维护的呢 xff0c 首先写一个简单的枚举
  • ‘sed‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    在使用adb命令查看task和Activity的时候 xff0c 发现报错 sed 不是内部或外部命令 xff0c 也不是可运行的程序 或批处理文件 看样子是没有配置sed的环境变量 xff0c 或者没有sed工具 从网上找了一下 xff0
  • win11 我们无法设置移动热点

    有可能是因为Windows移动热点服务被禁用 启动移动热点服务 1 使用该配件的键 43 热键启动运行 WindowsR 2 要打开 服务 xff0c 请在 打开 框中键入此文本并单击 确定 xff1a services msc 3 选中W
  • 链栈(java 实现)

    Node类 xff1a package LinkStack public class Node String name int age Node next public Node public Node String name int ag
  • Android之WindowManager介绍

    WindowManager android中真正展示给用户的是window和view activity在android中所其的作用主要是处理一些逻辑问题 xff0c 比如生命周期的管理 建立窗口等 在android中 xff0c 窗口的管理
  • https://dl.bintray.com/umsdk/release/com/facebook/react/react-native/maven-metadata 502 Bad Gateway

    https dl bintray com umsdk release com facebook react react native maven metadata xml 39 Received status code 502 from s
  • Android UI深度理解:Activity UI视图结构

    Activity UI视图结构 每个Activity都会获得一个窗口 xff0c 那就是Window xff0c 它用于绘制用户的UI界面 Window是一个抽象类 xff0c 提供了绘制窗口的一组通用API xff0c PhoneWind
  • 学习嵌入式必读十本书,从C语言到ARM

    学习嵌入式必读的十本书籍 xff0c 按照C语言 数据结构 Linux C 43 43 QT 单片机 ARM的顺序给大家推荐 01 C语言 凡是计算机 电子 通信 自动化 机械专业的同学 xff0c 大一的时候必学C语言 xff0c 而且大
  • 研一(研究生)看论文文献必须要知道的几个网站

    找论文看文献必备的几个网站 明确研究方向查找论文看英文文献看文献方法想说的几句话 明确研究方向 刚进入研究生阶段的同学们都干劲十足 xff0c 充满无限期待 但是没有正确的方向很容易让你的努力白费 xff0c xff08 有人会说丰富了自己
  • 【网络教程】群晖自动更新 Docker 映像与容器(Watchtower)【转】

    群晖自动更新 Docker 映像与容器 xff08 Watchtower xff09 更多内容
  • git多账号配置

    什么叫多账号配置 xff0c 也就是说假如你在公司用的gitlab服务器 xff0c 但是自己还有用到GitHub xff0c 那么此时你在本地就需要配置多个ssh key 步骤如下 xff1a 利用ssh keygen t rsa f g
  • Ubuntu 18.04和windows建立共享文件夹

    1 安装samba sudo apt install samba sudo apt install cifs utils 2 创建共享目录 mkdir home yourname share yourname是home下一个文件夹 xff0
  • Linux权限详解,多用户多组各种权限配置原理

    网上有太多关于Linux权限详解 xff0c 这里不啰嗦那些 主要解释下这些权限是杂用的 xff0c 否则知道了什么用户 组之类的权限也配不好 一 权限分类 r xff1a 读取权限 xff0c 数字代号为 34 4 34 w xff1a
  • 1.tow sum

    文章目录 题目c 43 43 版本java版本利用hashmap正确做法 题目 Two Sum Easy Given an array of integers return indices of the two numbers such t