Determination des rangs de sommets dans un graphe oriente

Messages postés
22
Date d'inscription
mardi 17 juillet 2018
Dernière intervention
7 novembre 2018
- 7 nov. 2018 à 20:45 - Dernière réponse :
Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
19 novembre 2018
- 8 nov. 2018 à 07:54
Bonjour, est-il possible de transformer ce code en java


Pour tout point i faire
Aucun point n'est marqué
M(i)=0 ;
Calcul du nombre de prédécesseurs de tout point
ndp=0 ;
Pour tout point j faire
si B(j,i)>0 alors ndp++ finsi
Fin pour j
NBPréd(i)=ndp ;
Fin pour i
Nombre de points marqués initialisés à 0
NBPM=0 ;
Valeur courante de la fonction rang
rang=-1 ;
L'algorithme est arrêté si on s'aperçoit que le graphe contient un circuit,
car dans ce cas il est impossible de calculer la fonction rang pour tous les points
circuit = faux ;
Itérations
Tantque NBPM<n et circuit = fauxfaire
une_modif=faux ;
rang=rang+1 ;
Pour tout i faire
si M(i) = 0 et NBPréd(i) = 0 alors
M(i)=1 ; NBPM=NBPM+1 ;
R(i)=rang ;
une_modif=vrai ;
finsi
Fin pour i
si une_modif = faux alors
Le graphe contient un circuit
circuit = vrai ;
sinon
On n'a pas encore détecté que le graphe contient un circuit.
si NBPM<n alors
Il reste des points non marqués.
Les points marqués sont devenus plus nombreux.
Il faut changer le tableau du nombre de prédécesseurs non marqués.
Pour tout point i faire
Calcul du nombre de prédécesseurs non marqués de tout point
ndp=0 ;
Pour tout point j faire
si B(j,i)>0 et M(j)=0 alors ndp++ finsi
Fin pour j
NBPréd(i)=ndp ;
Fin pour i
finsi
finsi
Fin tantque
Si circuit = vrai alors
Le graphe contient un circuit et la fonction rang ne peut être calculé.
sinon
Le tableau R contient le rang de tout point
finsi.


si vous avez un code j'aimerais l'observer car je n'arrive pas a implementer celui-ci en java.
Afficher la suite 

Votre réponse

1 réponse

Messages postés
5293
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
19 novembre 2018
8 nov. 2018 à 07:54
Commenter la réponse de Twinuts

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.