K先生个人博客

当前位置:首页 > 爱技术 > 正文

算法日常:两数之和

题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 

示例:

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

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

所以返回 [0, 1]

题目来源于力扣,由于我也是第一次在这上面答题,所以思考的并不是太多,以通过为目的,并没有过多的考虑时间复杂度等算法因素。下面是我的解题代码:

function twoSum($num, $target) {
	for ($i = 0; $i < count($num); $i++) {
		for ($j = 1; $j < count($num); $j++) {
			if ($num[$i] + $num[$j] == $target) {
				$res[0] = $i;
				$res[1] = $j;
				//加个判断是为了避免同一元素二次利用,当然也是为了通关,,,,
				if ($i != $j) {
					return $res;
				}

			}
		}
	}
	return [];
}

这是很暴力简单的解法了,就是循环比较判断,当然解题方法还会有很多,评论区见。

作者K先生本文地址http://www.gold404.cn/info/28

版权声明:本文为原创文章,版权归 K先生个人博客 所有,欢迎分享本文,转载请保留出处,谢谢!

文章评论

* 必填
可选
可选

评论列表