Nov 27, 2024

Wiki

Python

Aide

edit SideBar

Search

Bisect


Présentation

Le module bisect permet de conserver une liste toujours ordonnée : il évite de faire un appel, systématique et coûteux, à la méthode sort.

L'utilisation de bisect entraîne, dans le cas des listes ordonnées, un gain de temps d'exécution et d'occupation mémoire.

Méthodes

Dans ce qui suit, on suppose que $L$ est déjà ordonnée.

insort(L,x)
Insère l'élément $x$ dans la liste ordonnée $L$, en conservant son ordre.
  >>> from bisect import *
  >>> import random
  >>> L = []
  >>> for k in range(10):
  ...     insort(L, random.randint(1,100))
  ...
  >>> print L
  [1, 34, 38, 39, 46, 58, 64, 76, 83, 88]
On constate que insort(L,x) modifie L.
bisect(L,x)
Renvoie la position qu'occupera l'élément $x$ dans la liste ordonnée $L$.

Si l'on souhaite réinsérer $x$ dans une liste ordonnée le contenant déjà, alors le nouvel élément sera inséré à droite de celui préexistant. Si besoin est, on peut changer ce comportement par défaut, en utilisant les fonctions insort_left() et bisect_left().

Page Actions

Recent Changes

Group & Page

Back Links