Top 150 des entrevuesFacile

K Points les plus proches de l'origine

Guide détaillé et implémentation de Python pour le problème « K points les plus proches de l'origine ».

Énoncé du problème

Facile

Étant donné un tableau de points où points[i] = [xi, yi] représente un point sur le plan X-Y et un entier k, renvoie les k points les plus proches de l'origine (0, 0).

La distance entre deux points sur le plan X-Y est la distance euclidienne (c'est-à-dire sqrt((x1 - x2)^2 + (y1 - y2)^2)).

Vous pouvez renvoyer la réponse dans n'importe quel ordre. La réponse est garantie unique (sauf pour l’ordre dans lequel elle se trouve).

Écrivez une fonction kClosest(points: List[List[int]], k: int) -> List[List[int]].

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

Exemples

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?
Envisagez d'utiliser des structures de données spécifiques au tas/à la file d'attente prioritaire, comme des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

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

Ouvrir dans l'éditeur
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

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.