我们先来看题目:

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

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

示例:

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

因为 nums[0] + nums[1] = 2 + 7 = 9

所以返回 [0, 1]

再来看下代码:

class Solution {

/**

* @param Integer[] $nums

* @param Integer $target

* @return Integer[]

*/

public static function twoSum($nums, $target) {

$find = [];

for($i = 0; $i < count($nums); $i++) {

$value = $target - $nums[$i];

if ($p = array_key_exists($value, $find)) {

return [$find[$value], $i];

}

$find[$nums[$i]] = $i;

}

return [];

}

}

然后我们可以测试一下:

var_dump(Solution::twoSum([2, 7, 11, 15], 9));

最后再来看下执行结果:

执行用时 : 20 ms, 在Two Sum的PHP提交中击败了98.53% 的用户

内存消耗 : 15.9 MB, 在Two Sum的PHP提交中击败了18.07% 的用户

php算法两数之和 复杂度,每天一道leetcode算法题:两数之和-php版相关推荐

  1. python怎么设编程两个数相加时_黄哥Python, LeetCode 第二题两数相加代码

    来源力扣​leetcode-cn.com 给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相 ...

  2. 去掉数组最后一个元素_leetcode 34. 在排序数组中查找元素的第一个和最后一个位置每天刷一道leetcode算法系列!...

    作者:reed,一个热爱技术的斜杠青年,程序员面试联合创始人 前文回顾: leetcode1. 两数之和--每天刷一道leetcode系列! leetcode2. 两数相加--每天刷一道leetcod ...

  3. leetcode17. 电话号码的字母组合--每天刷一道leetcode算法系列!

    作者:reed,一个热爱技术的斜杠青年,程序员面试联合创始人 前文回顾: leetcode1. 两数之和--每天刷一道leetcode系列! leetcode2. 两数相加--每天刷一道leetcod ...

  4. 【恋上数据结构】复杂度知识以及LeetCode刷题指南

    基础知识 什么是算法? 如何评判一个算法的好坏? 大O表示法(Big O) 对数阶的细节 常见的复杂度 多个数据规模的情况 LeetCode刷题指南 斐波那契数列复杂度分析 斐波那契数列 - 递归 斐 ...

  5. 「二分查找」之我见!今天刷一道leetcode算法!

    来自:码农田小齐 算法将是我今后更新的重点,因为我个人非常喜欢..而且面试考它啊!有人说刷题没有用,但是你做了题就能感受到 coding 能力的提升和对语言熟悉度的提升.新的一年,每日一题,我们一起进 ...

  6. 一文通数据结构与算法之——链表+常见题型与解题策略+Leetcode经典题

    文章目录 1 链表 1.1 常见题型及解题策略 1.1.1 LeetCode中关于链表的题目有以下五种类型题: 1.1.2 解题策略 1.2 链表的基本内容 1.2.1 链表的基本结构: 1.2.2 ...

  7. LeetCode刷题-两数之和(持续更新)

    文章目录 LeetCode 1. Two Sum (两数之和) 题目描述 样例 解题思路一(暴力法) 解题思路二(使用map) 前言:最近业余时间,一直在看LeetCode上面的题,上面有许多好的解题 ...

  8. LeetCode第一题两数之和

    题目: 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标.你可以假设每种输入只会对应一个答案.但是,数 ...

  9. LeetCode第一题两数之和---JavaScript

    给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同一 ...

最新文章

  1. 1.12 改善你的模型表现-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
  2. Linux 802.11 Driver Developer’s Guide
  3. 最常用的决策树算法(二)Random Forest、Adaboost、GBDT 算法
  4. php 备份数据库 Backup Your MySQL Database Using PHP
  5. NORDIC 52832开发1之环境搭建及PTR5618模块性能测试
  6. Windows Phone 7, Hammock, OAuth and Sina Weibo’s API
  7. Linux如何运行exe驱动,在Linux下可用Wine安装和运行360驱动大师、CCleaner
  8. 新版税控注入方法及数据采集
  9. mysql数据库巡检方案_美团 MySQL 数据库巡检系统的设计与应用
  10. 远程访问及控制工具SSH
  11. 薪资16K,进华为外包怎么样?
  12. 2015广东最新DNS服务器地址
  13. vue-router配置路由实现返回上一页,上一页页面数据留存
  14. 12种编程语言训练,开源的AI “程序员”来了,CMU出品
  15. Seq2Seq模型中的集束搜索(Beam Search)
  16. 中国富豪的七条发家路--颇显中国特色
  17. C语言经典面试题 - 字母的大小写转化
  18. 主成分分析(PCA)(principal component analysis)
  19. shell学习之引号
  20. 还在手动换IP?大佬们都这样做

热门文章

  1. 生日在java中怎么写_如何用java写代码:输入自己的生日,距离今天已过多少天,或者还有...
  2. 采用Matlab编程实现 高频强调滤波,[转载]MATLAB图像处理-基于高频强调滤波和直方均衡化图像增强...
  3. 骑马与砍杀服务器修复,骑马与砍杀21.3.1公共版和热修说明 修复联机模式
  4. mysql转openldap_用mysql作openldap的后台数据库
  5. PHP报不存在图像文件,使用TP3.2.3图片文件上传显示不存在图像文件
  6. android自定义组合view,安卓自定义view之组合view
  7. 非命令行linux安装zip,如何在Ubuntu 18.04 Bionic Beaver Linux上使用命令行从ZIP文件安装Gnome Shell Extensions...
  8. sht-11c语言程序,温湿度传感器SHT11数据手册(中文)版.pdf
  9. java微信支付异步通知_Java中微信支付退款异步通知解码
  10. excel分类_Excel小技巧61:将输入的数字显示为中文