Algorithme de suppression d’un élément dans un ensemble d’éléments non triés.
Objectif: On recherche séquentiellement un élément par sa valeur ou sa position dans un ensemble d'éléments non triés. Algorithme Une valeur ou une position sont passés en paramètre de l'algorithme qui retourne une valeur booléenne et le nouvel ensemble modifié ou non. Une première itération permet de ranger les éléments dans un nouvel ensemble,tant que l'on ne trouve pas la valeur de l'élément ou sa position. L'indicateur booléen trouvé est positionné à vrai si la valeur ou la position ont été trouvé. Une deuxième itération permet de continuer le rangement des éléments tant que l'on n'a pas atteint la fin de l'ensemble de départ. Remarque L'ensemble se départ n'est pas modifié Résultat l'algorithme retourne le nouvel ensemble et le booléen Vrai si l'élément à été supprimé et Faux sinon,
Suppression par valeur
supprimerParValeur ensemble Ensemble, valeur Element -> ok Bool, ensemble Ensemble
trouvé <- Faux
nouvelEnsemble >- Structure ensemble
Initialiser ensemble
Enumerer ensemble ET NON trouvé
element >- Element_Courant ensemble
Si valeur = element
trouvé <- Vrai
Sinon
nouvelEnsemble <- element
Fin
Element_Suivant ensemble
Fin
Si trouvé
Enumerer ensemble
element >- Element_Courant ensemble
nouvelEnsemble <- element
Element_Suivant ensemble
Fin
Fin
<- trouvé nouvelEnsemble
Fin
Suppression par position
Cet algorithme est similaire à celui présenté ci-dessus. Un compteur de position permet rechercher un élément à la position donné en paramètre.
supprimerParPosition ensemble Ensemble, position Entier -> ok Bool, ensemble Ensemble
trouvé <- Faux
index <- 1
nouvelEnsemble >- Structure ensemble
Initialiser ensemble
Enumerer ensemble ET NON trouvé
element >- Element_Courant ensemble
Si position = index
trouvé <- Vrai
Sinon
nouvelEnsemble <- element
Fin
index <- index + 1
Element_Suivant ensemble
Fin
Si trouvé
Enumerer ensemble
element >- Element_Courant ensemble
nouvelEnsemble <- element
Element_Suivant ensemble
Fin
Fin
<- trouvé nouvelEnsemble
Fin
Notes
Dans ces deux algorithme le parcours de tous les éléments de l’ensemble est réalisé avec un itération booléenne de la forme:
Enumerer ensemble expression booléenne Instructions Fin
Traduction des algorithmes Swift, Julia
copyright A rchitectures A pplicatives A vancées A3-Soft