Leetcode PHP题解--D29 973. K Closest Points to Origin

973. K Closest Points to Origin

题目链接

973. K Closest Points to Origin

题目分析

给一个坐标数组points,从中返回K个离0,0最近的坐标。

其中,用欧几里得距离计算。

思路

把距离作为数组的键,把对应坐标作为数组的值。

用ksort函数排序,再用array_slice函数获取前K个即可。

最终代码

<?php
class Solution {
    function kClosest($points, $K) {
        $dists = [];
        foreach($points as $point){
            $dists[(string)sqrt(pow($point[0],2)+pow($point[1],2))] = $point;
        }
        ksort($dists);
        return array_slice($dists,0,$K);
    }
}

若觉得本文章对你有用,欢迎用爱发电资助。

skys215 has written 39 articles

没有bug的代码是有bug的代码。

积分:2152 等级:P7 职业:PHP工程师 城市:深圳

0 条回复

登录后才能进行评论,立即登录?