Algorithme - Insertion d'un élément dans une liste contiguë
Comme la suppression, on a deux cas dans l'insertion:
Insertion au début et au milieu:
Dans ce cas on a besoin de chercher la position de l'élément à insérer. L'opération s'effectue en deux étapes:
- Incrémenter la taille du tableau avec 1.
- Décaler tous les éléments de n à k puis insérer l'élément à la position k.
Insertion à la fin :
C'est un cas très simple car le décalage n'est pas effectué.
L'algorithme qui réunit les deux cas :
Procédure:
Algorithme inserer; Var i,k,x: entier; T[1..n] : entier; Début lire(x); n:=n+1; pour i de n à k pas-1 faire T[i+1] := T[i]; finfaire T[k] := x; Fin |
Procédure:
Procédure inserer(L:liste,k:1..lmax, x:élément) var i,n:1..lmax; Début n := L.longueur; L.longueur := n+1; pour i de n à k pas-1 faire L.T[i+1] := L.T[i]; finfaire L.T[i] := x; Fin |