Δομές Δεδομένων - Εργασία 3 [2017-18]

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό MasterChief » 27 Ιαν 2018, 10:04

Στον κώδικα που ανεβάσατε στο github για το bfs, στην αρχή η ουρά παίρνει το source το οποίο είναι index στην περίπτωσή μας και μετά το adj το οποίο είναι στοιχείο. Οπότε την επόμενη φορά το next παίρνει το στοιχείο αντί να πάρει το index του στοιχείου ή κάνω λάθος;
Κώδικας: Επιλογή όλων
 
 queue.offer(source);
..............................
final int next = queue.poll();
            for (int adj : g.getOutEdges(next)) {
                if (visited.add(adj)) {
                    queue.offer(adj);
                }
            }
.............................
Άβαταρ μέλους
MasterChief
Newbie
 
Δημοσιεύσεις: 1
Εγγραφή: 05 Δεκ 2015, 21:26
Φοιτητής ΗΜΜΥ: Ναι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 10:55

MasterChief έγραψε:Στον κώδικα που ανεβάσατε στο github για το bfs, στην αρχή η ουρά παίρνει το source το οποίο είναι index στην περίπτωσή μας και μετά το adj το οποίο είναι στοιχείο. Οπότε την επόμενη φορά το next παίρνει το στοιχείο αντί να πάρει το index του στοιχείου ή κάνω λάθος;

Όπως έχουμε πει, οι κόμβοι είναι αριθμημένοι από το $0$ στο $V-1$. Άρα στην περίπτωση των γραφημάτων που έχετε στη διάθεσή σας, η έννοια στοιχείου και index είναι ταυτόσημες.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό Ritsa » 27 Ιαν 2018, 15:08

Προσπαθώ να τρέξω την τελευταία άσκηση με τις πόλεις και σε όλες τις δοκιμές μου βγάζει error "java.lang.Exception: Test class should have exactly one public constructor". Πώς μπορώ να το διορθώσω; Δεν νομίζω να έχω πειράξει το δοθέν αρχείο.
Ritsa
Newbie
 
Δημοσιεύσεις: 3
Εγγραφή: 14 Ιουν 2016, 13:29

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 16:43

Ritsa έγραψε:Προσπαθώ να τρέξω την τελευταία άσκηση με τις πόλεις και σε όλες τις δοκιμές μου βγάζει error "java.lang.Exception: Test class should have exactly one public constructor". Πώς μπορώ να το διορθώσω; Δεν νομίζω να έχω πειράξει το δοθέν αρχείο.

Δεν μπορώ να αναπαράγω το σφάλμα που λες. Με το αρχείο που σας δίνεται δεν υπάρχει αυτό το σφάλμα. Θα πρέπει να δώσεις περισσότερες πληροφορίες, πχ τον κώδικα (χωρίς να συμπεριλάβεις μέρος της λύσης). Ή αν δεν γίνεται να μην συμπεριλάβεις στείλε μου τον κώδικα στο προσωπικό μου email (gstamat).
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό poppychr » 27 Ιαν 2018, 17:12

test[Test 0: Source: 0, Graph: { }](gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest)
java.lang.NullPointerException: null
test[Test 1: Source: 0, Graph: { }](gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest)
java.lang.NullPointerException: null
.
.
.

Στον αλγοριθμο του bfs και στα 150 test βγαζει το παραπανω error, ενω στο dfs βγηκαν ολα σωστα, παρολο που χρησιμοποιω τις ιδιες συναρτησεις με αλλη λογικη.
poppychr
Newbie
 
Δημοσιεύσεις: 4
Εγγραφή: 26 Ιουν 2012, 00:38

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 17:33

poppychr έγραψε:test[Test 0: Source: 0, Graph: { }](gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest)
java.lang.NullPointerException: null
test[Test 1: Source: 0, Graph: { }](gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest)
java.lang.NullPointerException: null
.
.
.

Στον αλγοριθμο του bfs και στα 150 test βγαζει το παραπανω error, ενω στο dfs βγηκαν ολα σωστα, παρολο που χρησιμοποιω τις ιδιες συναρτησεις με αλλη λογικη.

Άρα φταίει η λογική. Στείλε μου τον κώδικα στο προσωπικό μου email για να σου δώσω μια κατεύθυνση.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό Dejvi » 27 Ιαν 2018, 17:51

Δεν καταλαβαίνω πως μπορώ να χρησιμοποιήσω την g.getoutEdges(v).Θα μου επιστρεψει ενα σετ απο ακεραιους οι οποιοι ειναι γειτονες με το v αλλα εγω πως μπορω να τους διατρεξω πχ αν θελω να παρω τα στοιχεια αυτα και να τα βαλω σε ενα πινακα ?
Dejvi
Newbie
 
Δημοσιεύσεις: 2
Εγγραφή: 05 Φεβ 2016, 10:32

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 17:56

Dejvi έγραψε:Δεν καταλαβαίνω πως μπορώ να χρησιμοποιήσω την g.getoutEdges(v).Θα μου επιστρεψει ενα σετ απο ακεραιους οι οποιοι ειναι γειτονες με το v αλλα εγω πως μπορω να τους διατρεξω πχ αν θελω να παρω τα στοιχεια αυτα και να τα βαλω σε ενα πινακα ?

Αυτό το δείξαμε στο εργαστήριο χθες. Δεν είναι πάντα απαραίτητο να τα βάλεις σε πίνακα. Αν όντως θέλεις να το κάνεις, μπορείς να δημιουργήσεις πρώτα έναν πίνακα int[] και μετά να τα διατρέξεις με τον τρόπο που φαίνεται στα examples του simple-graph, βάζοντάς τα παράλληλα στον πίνακα.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό Dejvi » 27 Ιαν 2018, 18:13

Δεν βρισκω το κομματι που γινεται αυτο και ειμαι στο παράδειγμα DFS στο github .
Dejvi
Newbie
 
Δημοσιεύσεις: 2
Εγγραφή: 05 Φεβ 2016, 10:32

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 18:25

Dejvi έγραψε:Δεν βρισκω το κομματι που γινεται αυτο και ειμαι στο παράδειγμα DFS στο github .

Διάβασε τα προηγούμενα post. Ο κώδικας της διάτρεξης υπάρχει σε πολλά σημεία αυτού του thread (για παράδειγμα στο viewtopic.php?f=198&t=9027#p38904) και τον έχουμε δείξει πολλές φορές στα δύο εργαστήρια.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό poppychr » 27 Ιαν 2018, 19:05

που ακριβως στο πακετο που δινεται μπορουμε να δουμε τις εντολες για να δημιουργησουμε ενα δικο μας γραφημα??
poppychr
Newbie
 
Δημοσιεύσεις: 4
Εγγραφή: 26 Ιουν 2012, 00:38

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό petrgrig » 27 Ιαν 2018, 19:09

Όπως έτρεχε η eclipse μια χαρά στα ξαφνικά όταν την κάνω Run μου βγάζει πάντα αυτό το error:
gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest

Από την στιγμή που δεν βγάζει το αρχείο που χρησιμοποιώ κάποιο σφάλμα γιατί όταν κάνω Run βγάζει αυτό;
petrgrig
Newbie
 
Δημοσιεύσεις: 5
Εγγραφή: 04 Δεκ 2015, 16:10

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 19:55

poppychr έγραψε:που ακριβως στο πακετο που δινεται μπορουμε να δουμε τις εντολες για να δημιουργησουμε ενα δικο μας γραφημα??

Δεν χρειάζεται να δημιουργήσετε δικό σας γράφημα αλλά αν θέλετε να μάθετε έτσι κι αλλιώς πώς γίνεται δείτε τα παραδείγματα GenerateRandomGraph και GenerateRandomDirectedGraph. Είναι πιο μικρό παράδειγμα δημιουργίας του γραφήματος 0 -- 1 -- 2 είναι:

Κώδικας: Επιλογή όλων
MutableGraph mutableGraph = new MutableGraph(3);
mutableGraph.putEdge(0, 1);
mutableGraph.putEdge(1, 2);
Graph g = new Graph(mutableGraph);


Και για το κατευθυνόμενο 0 -> 1 -> 2 είναι:

Κώδικας: Επιλογή όλων
MutableDirectedGraph mutableGraph = new MutableDirectedGraph(3);
mutableGraph.putEdge(0, 1);
mutableGraph.putEdge(1, 2);
DirectedGraph g = new DirectedGraph(mutableGraph);
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό James » 27 Ιαν 2018, 19:57

petrgrig έγραψε:Όπως έτρεχε η eclipse μια χαρά στα ξαφνικά όταν την κάνω Run μου βγάζει πάντα αυτό το error:
gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest

Από την στιγμή που δεν βγάζει το αρχείο που χρησιμοποιώ κάποιο σφάλμα γιατί όταν κάνω Run βγάζει αυτό;

Το

Κώδικας: Επιλογή όλων
gr.duth.ee.euclid.datastructures.testing_framework.common.ParametrizedTest


δεν είναι error, είναι ένα class. Θα πρέπει να γράψεις ποιο είναι το error καθώς και τον τρόπο που εκτελείς το test.
(Μόνο) James
Άβαταρ μέλους
James
Διαχειριστής
 
Δημοσιεύσεις: 1740
Εγγραφή: 08 Ιαν 2008, 22:29
Φοιτητής ΗΜΜΥ: Όχι

Re: Δομές Δεδομένων - Εργασία 3 [2017-18]

Δημοσίευσηαπό petrgrig » 27 Ιαν 2018, 20:10

Κάνω δέξι κλικ στο project-testing.jar->Run As->3 JUnit Test
και μου βγάζει εκείνο που ανάφερα. Όπως έτρεχα την πρώτη εργασία Moοdle δεν μου έβγαζε κάποιο λάθος, μια χαρά έτρεχε.
petrgrig
Newbie
 
Δημοσιεύσεις: 5
Εγγραφή: 04 Δεκ 2015, 16:10

ΠροηγούμενηΕπόμενο

Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 27 επισκέπτες