Bonjour,
Je suis débutant, et je ne comprends vraiment pas la fonction "Tri-Fusion" tirée de l'algorithme qui s'y rapporte. Je comprends la logique générale, mais j'ai beaucoup plus de mal avec l'implémentation.
J'ai écrit la fonction comme suit :
Je ne comprends pas l'ordre d'appel des fonctions triFusion(A, p, q), triFusion(A, q+1, r) et Fusion(A, p, q, r). Quelqu'un peut-il m'expliquer ce qui se passe concrètement ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 int A[] = {5,1,3,7}; public static void triFusion(int A[], int p, int r) { int q; if(p < r){ q = ((p+r)/2); triFusion(A, p, q); triFusion(A, q+1, r); Fusion(A, p, q, r); } }
Merci.
Partager