ARTS第一周
A
Algorithm
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]
#本人写的简单暴力的两个for循环 function twoSum($nums, $target) { $count = count($nums); for($i=0;$i<$count;$i++) { for($j= $i+ 1;$j< $count;$j++) { if($target - $nums[$i] == $nums[$j]) { return [$i, $j]; } } } } #leecode上面执行效率最高的写法供大家参考: function twoSum($nums, $target) { $v = 0; $map = []; $len = count($nums); for ($i = 0; $i < $len; ++$i) { $v = $target - $nums[$i]; if (array_key_exists($v, $map) && $i != $map[$v]) { return [$map[$v], $i]; } $map[$nums[$i]] = $i; } }
Review
https://itnext.io/7-things-you-need-to-know-to-get-the-most-out-of-your-laravel-model-4f915acbb47c
Tip
phpstorm windows环境下 ctrl+g 跳转到到指定行
Share
中国程序员最应该注意的单词发音:
https://github.com/shimohq/chinese-programmer-wrong-pronunciation