Bonjour,
Dans le cadre d'un projet pou mon cours d'algorithmique, je dois créer un programme en java manipulant un graphe. Celui-ci, est composé de nœuds et d'arcs. Pour représenter une telle structure, j'utilise 3 classes, une classe Graphe, une classe Nœud et une Classe Arc.
Je ne suis pas familier avec le langage Java, on nous laisse nous débrouiller pour arriver au résultat demandé. Je rencontre un problème, qui d'après mon expérience en C++, me fait penser à un soucis d'édition de liens entre mes classe Noeud et Arc.
voici ma classe Arc dans l'état actuel :
La classe Nœud possède un tableau de type Arc dont chaque "case du tableau" contient un arc.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 import java.lang.*; import java.util.Vector; public class Arc { // méthodes et fonctions public static void main ( String[] args ) { } public Arc () { poids_ = 0; } public Arc ( Noeud d, Noeud f, int p) { poids_ = p; debut_ = d; fin_ = f; } public int poids () { return poids_; } public Noeud debut () { return debut_; } public Noeud fin () { return fin_; } // variables private int poids_; private Noeud debut_; private Noeud fin_; }
voici la classe Noeud que j'essaie d'écrire en ce moment :
lorsque que compile le code, j'ai ceci comme erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 import java.lang.*; import java.util.Vector; public class Noeud { // méthodes et fonctions public static void main () { } public Noeud() { capacite_ = 0; } public Noeud(int c) { capacite_ = c; } public void arcVersSuivant (Noeud suivant, int p) { arcs[0].addElement(new Arc (this, suivant, p)); } public Noeud successeur (int i) { return arcs[i].fin(); } // variables private Vector<Arc> [] arcs; private int capacite_; }
Je ne comprend pas pourquoi dans ma classe Noeud, le compilateur ne trouve pas de lien vers la méthode fin () de ma classe Arc ( j'ai souligné et mis en rouge ces deux passages ).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Noeud.java:27: cannot find symbol symbol : method fin() location: class java.util.Vector<Arc> return arcs[i].fin(); ^ 1 error
Dès lors, je me pose deux questions : soit il me manque quelque chose au niveau de l'édition des liens, soit j'utilise mal la classe Vector de java.
Je n'ai pas trouvé la réponse, c'est pourquoi j'aimerai savoir si quelqu'un aurait la gentillesse de m'éclairer.
je précise aussi que je travail sous fedora10.
merci d'avance de votre aide
Partager