当前位置: 首页 > news >正文

LeetCode之两数之和

1、暴力解法

/*** 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。* 你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。* 你可以按任意顺序返回答案。*/fun twoSum(nums: IntArray, target: Int): IntArray {var firstIndex = -1var secondIndex = -1if (nums.size < 2) return intArrayOf(firstIndex, secondIndex)for (i in 0 until nums.size) {val lastValue = target - nums[i]firstIndex = ifor (j in i + 1..nums.size - 1) {if (nums[j] == lastValue) {secondIndex = jreturn intArrayOf(firstIndex, secondIndex)}}}return intArrayOf(firstIndex, secondIndex)}

2、需要注意的地方
边界判断不准,导致结果出错。
break只是跳出了一层循环,导致结果出错。

3、优化方式
采用hashMap的方式

http://www.dtcms.com/a/139653.html

相关文章:

  • 驱动-原子操作
  • 《Java 泛型的作用与常见用法详解》
  • 【JavaScript】二十四、JS的执行机制事件循环 + location + navigator + history
  • 做Data+AI的长期主义者,加速全球化战略布局
  • 4月17日复盘
  • Kettle和Canal
  • 【AI论文】Genius:一种用于高级推理的可泛化和纯无监督的自我训练框架
  • 使用FastAPI构建高效、优雅的RESTful API
  • 基于ssh密钥访问远程Linux
  • AI 数字短视频数字人源码开发的多元价值与深远意义​
  • 网络417 路由转发2 防火墙
  • 常见的VLAN划分方式和示例场景
  • [250417] Fedora 42 正式发布,搭载 Linux 6.14 内核和 GNOME 48 桌面环境
  • 扫雷-C语言版
  • 使用Qt multimedia模块实现简易的视频播放器
  • stm32-lm75、SPI
  • Jenkins 2.492.2 LTS 重置管理员密码
  • 科研新触角:松灵六轴臂重构具身智能生态
  • 在Ubuntu服务器上部署xinference
  • python入门:不同进制数据的表示方式,转换;数据类型的转换,隐式类型的转换
  • ServletRequestListener 的用法笔记250417
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(6):ながら 一边。。一边
  • NVIDIA 显卡
  • Python基础总结(六)之集合
  • 《如何用 Function 实现动态配置驱动的处理器注册机制?》
  • 多重背包转01背包优化
  • Linux:进程:进程状态
  • ServletContextAttributeListener 的用法笔记250417
  • StarCraftII SMAC 环境配置的debug日记
  • #include <bits/stdc++.h> 头文件解析 [特殊字符]‍[特殊字符]