0Pricing
Coding Interview Prep · Leçon

Trouver l’indice, pas seulement la valeur

Suivre les positions avec enumerate

Trouver l’indice, pas seulement la valeur est une leçon Coding Interview Prep gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Coding Interview Prep, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Coding Interview Prep comprend 4 leçons au total.

Les positions sont importantes

Souvent, la réponse n’est pas la valeur, mais l’endroit où elle se trouve. Les problèmes de concours demandent fréquemment un indice commençant à 1 ou à 0 ; vous devez donc suivre les positions.

a = [4, 1, 7, 3]

Trouver avec .index()

a.index(x) renvoie la position de la première correspondance. C’est rapide à écrire, mais la recherche parcourt les éléments de gauche à droite en O(n).

pos = a.index(7)  # 2

Les valeurs absentes provoquent des erreurs

Si la valeur est absente, .index() déclenche une ValueError, c’est-à-dire une erreur à l’exécution. Vérifiez d’abord l’appartenance lorsque vous avez un doute.

if x in a:
    pos = a.index(x)

Boucler avec enumerate

enumerate vous fournit simultanément l’indice et la valeur à chaque étape : c’est la manière claire de suivre les positions pendant le parcours.

for i, v in enumerate(a):
    print(i, v)

Commencer enumerate à un

De nombreux juges attendent des positions commençant à 1. Transmettez start=1 à enumerate afin que le premier indice soit 1, conformément à l’énoncé.

for i, v in enumerate(a, start=1):
    ...

Indice du maximum

Pour trouver où se situe le maximum, parcourez le tableau et mémorisez le meilleur indice, car max(a) seul ne fournit que la valeur.

best = 0
for i, v in enumerate(a):
    if v > a[best]:
        best = i

Un argmax élégant

Une astuce compacte consiste à associer chaque indice à sa valeur, puis à prendre le maximum selon la valeur. L’intervalle fournit directement la position.

best = max(range(len(a)), key=lambda i: a[i])

Collecter tous les indices correspondants

Vous avez besoin de chaque position d’une valeur ? Une compréhension appliquée à enumerate rassemble toutes les correspondances en une ligne.

idx = [i for i, v in enumerate(a) if v == 7]

Associer une valeur à un indice

Pour effectuer des recherches répétées, construisez une table de correspondance entre les valeurs et les indices une seule fois ; chaque recherche suivante devient alors un accès en O(1).

where = {v: i for i, v in enumerate(a)}

Les doublons nécessitent de l’attention

Un dict associant une valeur à un indice ne conserve que la dernière occurrence. Utilisez une liste par clé, ou enumerate, lorsque les doublons sont importants.

where = {}
for i, v in enumerate(a):
    where.setdefault(v, []).append(i)

Convertir entre bases d’indices

Faites attention à la base : si vous avez mémorisé des indices commençant à 0 mais devez afficher des indices commençant à 1, ajoutez un. Mélanger les bases est un piège qui produit silencieusement une mauvaise réponse.

print(pos + 1)  # 0-based to 1-based

Vérification rapide

Vous voulez des positions commençant à 1 pendant le parcours. Qu’écrivez-vous ?

Récapitulatif : suivre les positions

Vous pouvez maintenant trouver un indice unique, l’indice du maximum ou tous les indices, et associer des valeurs à des positions en toute sécurité. enumerate est votre outil fiable pour suivre les positions. 🎯

Questions Fréquemment Posées

La leçon « Trouver l’indice, pas seulement la valeur » est-elle gratuite ?

Oui — le texte complet de « Trouver l’indice, pas seulement la valeur » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Coding Interview Prep, passe à CoddyKit PRO. Le cours Coding Interview Prep comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Trouver l’indice, pas seulement la valeur » ?

Suivre les positions avec enumerate Tu pratiques Coding Interview Prep avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Coding Interview Prep ?

Aucune expérience préalable n'est requise. Coding Interview Prep sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Trouver l’indice, pas seulement la valeur » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Coding Interview Prep ?

Oui. Chaque leçon Coding Interview Prep inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Listes, indexation et tranches pour CP
  2. Construire rapidement des tableaux avec les compréhensions
  3. Min, max, somme et totaux cumulés
  4. Trouver l’indice, pas seulement la valeur
← Retour à Coding Interview Prep