Plan de cours
- L’algorithme des arbres et les arbres binaires
- Les types abstraites
- Les piles et les files
- Les listes
- Representation d’arbre binaire
- Represenation des graphes .
- Matrice d’adjacence
- Exercices corrigés sur les listes
Nous avons écrit ce livre en supposant que le lecteur y arrive avec certaines connaissances. Autrement dit, nous supposons que le lecteur est au moins vaguement familier avec un langage de programmation de haut niveau, tel que C, C ++ ou Java, et qu’il ou elle comprend les principales constructions d’un langage de haut niveau, notamment:
- Variables et expressions.
- Méthodes (également appelées fonctions ou procédures).
- Structures de décision (telles que if-statements et switch-statements).
- Structures d’itération (for-loops et while-loops).
Pour les lecteurs qui connaissent ces concepts, mais pas comment ils sont exprimés en Java, nous fournissons une introduction au langage Java dans le chapitre 1. Cependant, ce livre est avant tout un livre de structures de données, pas un livre Java; par conséquent, il ne fournit pas un traitement complet de Java. Néanmoins, nous ne supposons pas que le lecteur soit nécessairement familiarisé avec la conception orientée objet ou avec des structures liées, telles que les listes liées, car ces sujets sont abordés dans les chapitres centraux de ce livre.
Profitez de ce manuel de formation en PDF pour comprendre mieux le algorithme et enrichir votre connaissance.
Commencez à télécharger ce cours adapté pour vous et à apprendre algorithme.
DVD-MIAGE Listes chainées Algorithmique Chapitre 10 10 / 12 2.3.6. Supprimer d’une liste chaînée un élément portant une valeur donnée Il faut: traiter à part la suppression du premier élément ca r il faut modifier le pointeur de tête, trouver l’adresse P de l’élément à supprimer, sauvegarder l’adresse Prec de l’élément précédant l’élément pointé par P pour connaître l’adresse de l’élément précédant l’élément à suppri mer, puis faire pointer l’élément précédent sur l’élément suivant l’élément à supprimer, Libérer l’espace mémoire occupé par l’élément suppr imé. L’exemple considère que l’on souhaite supprimer l’é lément contenant la valeur « liste » de la liste ci-dessus. Tete Prec P 3 24 8 @ :3 @ : 24 @ :8 @ : 56 Ma première liste chaînée 24 56 8 56 Nil Elément précédant Elément à supprimer celui à supprimer Procedure SupprimerElement ( Entrée/Sortie Tete : Liste, Val : variant) /* Supprime l’élément dont la valeur est passée en paramètre */ Variables locales P : Liste /* pointeur sur l’élément à supprime r */ Prec : Liste /* pointeur sur l’élément précédan t l’élément à supprimer */ Trouvé : Liste /* indique si l’élément à supprim er a été trouvé */ DEBUT SI Tete Nil ALORS /* la liste n’est pas vide on peut donc y chercher une valeur à supprimer */ SI Tete^.info = Val ALORS /* l’élément à supprimer est le premier */ P Tete Tete Tete^Suivant Desallouer(P) SINON /* l’élément à supprimer n’est pas le premier */ Trouve Faux Prec Tete /* pointeur précédent */ P Tete^.Suivant /* pointeur courant */ TANTQUE P Nil ET Non Trouve SI P^.Info = Val ALORS /* L’élément recherché est l’élément courant */ Trouve Vrai SINON /* L’élément courant n’est pas l’élément cherch é */ Prec P /* on garde la position du précédent */ P^ P^.Suivant /* on passe à l’élément suivant dans l a liste */ FINSI FIN TANT QUE SI Trouve ALORS Prec^.Suivant P^.Suivant /* on « saute » l’élément à supprimer » / Desallouer(P) SINON Ecrire (« La valeur « , Val, » n’est pas dans la liste ») FINSI FINSI SINON Ecrire(« La liste est vide ») FINSI FIN