Leetcode 1

兩數之和

給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和爲目標值的那 兩個 整數,並返回他們的數組下標。數組

你能夠假設每種輸入只會對應一個答案。可是,你不能重複利用這個數組中一樣的元素。bash

實例:ui

給定 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[]
     */
    function twoSum($nums, $target) {
        
        for ($i=0;$i<count($nums);$i++) {
            
            $correctNum = $target-$nums[$i];
            
            if(in_array($correctNum,$nums)) {
                
                if($i!=array_search($correctNum,$nums)){
                    // array_search($val, $arr)  返回數組中某值對應的鍵
                    return [$i,array_search($correctNum,$nums)];
                    
                }
                continue;
            }
        }
    }
}複製代碼

本人菜鳥一枚,無心冒犯,若有更好的解法,歡迎評論留言啊!spa

相關文章
相關標籤/搜索