【leetcode go php】两数之和

  • Post author:
  • Post category:php


在这里插入图片描述

【go】

func twoSum(nums []int, target int) []int {
     // 使用 hash 的思想
    isv := make(map[int]int)
    length := len(nums)
    for i:=0;i<length;i++ {
        // 同时计算另一个值,并检查是否已经存在
        if j,ok := isv[target-nums[i]]; ok && i!=j {
            return []int{j,i}
        }
        // 记录每个值的位置
        isv[nums[i]] = i
    }
    return nil
}

【php】

class Solution {

    /**
     * @param Integer[] $nums
     * @param Integer $target
     * @return Integer[]
     */
    function twoSum($nums, $target) {
        for ($i=0;$i<count($nums);$i++) {
            $diff = $target-$nums[$i];
            if(array_key_exists($diff,$find)){
                return [$find[$diff],$i];
            }
            $find[$nums[$i]] = $i;
        }
    }
}



版权声明:本文为qq_20008173原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。