Top 150 des entrevuesFacile

Deux sommes II

Guide détaillé et implémentation de Python pour le problème « Two Sum II ».

Énoncé du problème

Facile

Étant donné un tableau d'entiers indexés à 1 numbers qui est déjà trié dans un ordre non décroissant, trouvez deux nombres tels qu'ils totalisent un nombre target spécifique.

Renvoie les indices des deux nombres, index1 et index2, ajoutés par un sous forme d'un tableau d'entiers [index1, index2] de longueur 2.

Vous ne pouvez pas utiliser deux fois le même élément. Votre solution doit utiliser uniquement un espace supplémentaire constant.

Écrivez une fonction twoSum(numbers: List[int], target: int) -> List[int].

Contraintes
  • 2 <= len(numbers) <= 3 * 10^4
  • -1000 <= numbers[i] <= 1000
  • numbers is sorted in non-decreasing order
  • -1000 <= target <= 1000
  • Exactly one solution exists

Exemples

Example 1
Input
numbers = [2, 7, 11, 15], target = 9
Output
[1, 2]
Explanation

2 + 7 = 9. The indices are 1 and 2 (1-indexed).

Example 2
Input
numbers = [2, 3, 4], target = 6
Output
[1, 3]
Explanation

2 + 4 = 6. The indices are 1 and 3 (1-indexed).

Example 3
Input
numbers = [-1, 0], target = -1
Output
[1, 2]
Explanation

-1 + 0 = -1. The indices are 1 and 2 (1-indexed).

Need a Hint?
Pensez à utiliser des structures de données spécifiques à Two Pointers, 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.