ioCode

Recherche dichotomique

Rechercher • Exercices 1A
  1. Écrire une fonction impérative rech_dich_imp(t: list[int], elem: int) -> int | None qui renvoie l'indice de elem dans la liste triée t, ou None si l'élément est absent. Par exemple rech_dich_imp([1, 3, 5, 7], 5) renvoie 2.
  2. On s'intéresse maintenant à des séquences dans lesquelles les éléments peuvent être répértés. Par exemple [1, 2, 2, 2, 3, 3, 5]. Écrire une fonction le_plus_a_gauche(t, elem) qui renvoie l'indice de la première occurrence de elem dans la liste triée t, ou None si l'élément est absent. Par exemple le_plus_a_gauche([1, 3, 3, 5], 3) renvoie 1.
  3. Écrire une fonction r_dicho(t, g, d, elem) qui renvoie l'indice de elem dans le sous-table t[g:d+1], ou None si l'élément est absent. Par exemple r_dicho([1, 3, 5, 7], 0, 3, 5) renvoie 2.
Langage
Console initialisée. En attente de l'interpréteur...