Supprime min
helloword95
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,
J'essaye de supprimer l'entier minimum dans un ABR mais je n'y arrive pas. Ce code me donne un NullPointerException..
Votre aide me serait grandement utile.
Merci
J'essaye de supprimer l'entier minimum dans un ABR mais je n'y arrive pas. Ce code me donne un NullPointerException..
private int supprimeMin(NoeudEntier noeud) {
if (noeud.gauche != null && noeud.gauche.gauche == null && noeud.gauche.droit != null) {
int min = noeud.gauche.entier;
noeud.gauche = noeud.gauche.droit;
return min;
}
if (noeud.gauche != null && noeud.gauche.gauche == null && noeud.gauche.droit == null) {
int min = noeud.gauche.entier;
noeud.gauche = null;
return min;
}
return supprimeMin(noeud.gauche);
}
Votre aide me serait grandement utile.
Merci
A voir également:
- Supprime min
- Recuperer message whatsapp supprimé - Guide
- Message supprimé whatsapp - Guide
- Maj to min - Guide
- Comment supprimer un fichier qui refuse d'être supprimé - Guide
- Comment retrouver un numero supprimé - Accueil - Android
1 réponse
Bonjour,
Prenons le cas noeud.gauche == null, tu ne rentres pas dans tes if, donc tu fais supprimeMin(noeud.gauche)
Au deuxième appel, tu as donc noeud == null, d'où le NullPointerException sur noeud.gauche
Remarque : c'est très certainement une erreur de travailler avec noeud.gauche.gauche et noeud.gauche.droit, tu vas trop loin dans ton analyse, il faudrait se limiter à noeud, noeud.gauche et noeud.droit
Prenons le cas noeud.gauche == null, tu ne rentres pas dans tes if, donc tu fais supprimeMin(noeud.gauche)
Au deuxième appel, tu as donc noeud == null, d'où le NullPointerException sur noeud.gauche
Remarque : c'est très certainement une erreur de travailler avec noeud.gauche.gauche et noeud.gauche.droit, tu vas trop loin dans ton analyse, il faudrait se limiter à noeud, noeud.gauche et noeud.droit