題目
我們有乙個由平面上的點組成的列表 points。需要從中找出 k 個距離原點 (0, 0) 最近的點。
(這裡,平面上兩點之間的距離是歐幾里德距離。)
例如:輸入:points = [[1,3],[-2,2]], k = 1
輸出:[[-2,2]]
分析
如題也就是說,求出前k個離 (0,0)最近的點。
那就要排序。
距離如何排序?先用勾股定理求出距離。
ok,思路好了,接下來就是**
class
solution
; temp.
add(item);}
// 排序方法
temp.
sort
(new
comparator()
});// 組織返回值
int[
] res =
newint
[k][2]
;for
(int i=
0;i)return res;
}// 求距離的函式
public
float
getdistance
(int
point)
}
最接近原點的K個點
我們有乙個由平面上的點組成的列表points。需要從中找出k個距離原點 0,0 最近的點。這裡,平面上兩點之間的距離是歐幾里德距離。你可以按任何順序返回答案。除了點座標的順序之外,答案確保是唯一的。輸入 points 1,3 2,2 k 1 輸出 2,2 解釋 1,3 和原點之間的距離為 sqrt ...
973 最接近原點的 K 個點
我們有乙個由平面上的點組成的列表points。需要從中找出k個距離原點 0,0 最近的點。這裡,平面上兩點之間的距離是歐幾里德距離。你可以按任何順序返回答案。除了點座標的順序之外,答案確保是唯一的。示例 1 輸入 points 1,3 2,2 k 1 輸出 2,2 解釋 1,3 和原點之間的距離為 ...
973 最接近原點的 K 個點
輸入資料樣本很少 直接排序 def kclosest self,points list list int k int list list int dis for i,point in enumerate points i,point 0 2 point 1 2 mdis sorted dis,key...