Top 150-InterviewEinfach

K Die dem Ursprung am nächsten gelegenen Punkte

Detaillierte Anleitung und Python-Implementierung für das Problem „K Closest Points to Origin“.

Problemstellung

Einfach

Geben Sie bei einem Array von Punkten, bei dem Punkte[i] = [xi, yi] einen Punkt auf der X-Y-Ebene und eine ganze Zahl k darstellt, die k Punkte zurück, die dem Ursprung am nächsten liegen (0, 0).

Der Abstand zwischen zwei Punkten auf der X-Y-Ebene ist der euklidische Abstand (d. h. sqrt((x1 - x2)^2 + (y1 - y2)^2)).

Sie können die Antwort in beliebiger Reihenfolge zurückgeben. Die Antwort ist garantiert eindeutig (mit Ausnahme der Reihenfolge, in der sie vorliegt).

Schreiben Sie eine Funktion kClosest(points: List[List[int]], k: int) -> List[List[int]].

Einschränkungen
  • 1 <= k <= len(points) <= 10^4
  • -10^4 <= xi, yi <= 10^4

Beispiele

Example 1
Input
points = [[1,3],[-2,2]], k = 1
Output
[[-2,2]]
Explanation

The distance from (1, 3) to the origin is sqrt(10). The distance from (-2, 2) to the origin is sqrt(8). Since sqrt(8) < sqrt(10), (-2, 2) is closer to the origin.

Example 2
Input
points = [[3,3],[5,-1],[-2,4]], k = 2
Output
[[3,3],[-2,4]]
Explanation

The closest two points are (3, 3) and (-2, 4). (Order of elements in the output does not matter).

Need a Hint?
Erwägen Sie die Verwendung von Heap-/Prioritätswarteschlangen-spezifischen Datenstrukturen wie Sets oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.