Toν αριθμό των κόμβων με ποιον τροπο μπορούμε να τον βρούμε;
Στο ερώτημα του Dijkstra το πλήθος των κόμβων υπάρχει στο αντικείμενο graph, συγκεκριμένα “graph.N”.
Στο ερώτημα με τα Graph Traversals, θα πρέπει ο αλγόριθμος να απαντήσει στο ερώτημα χρησιμοποιώντας μόνο τους γείτονες κάθε κόμβου που επισκέπτεται.
Σημείωση: Στα ερωτήματα και τις παρατηρήσεις που υποβάλλονται στο forum καλό είναι να διευκρινίζεται σε ποια εργασία και σε ποιο ερώτημα της εργασίας αυτής αναφέρεται το καθένα.
Στην εκφώνηση γράφει ότι "Το μέγεθος του γραφήματος σε κόμβους ανήκει στο κλειστό διάστημα [3, 100] και δεν χρειάζονται έλεγχοι για να διαπιστωθεί αν είναι όντως σε αυτό το διάστημα. " Κατά την εκτέλεση όμως, υπάρχουν γραφήματα με μικρότερο μήκος. Υπάρχει μήπως κάποιο λάθος στην εκφώνηση;
Πράγματι στα Graph Traversals φαίνεται να γίνονται δοκιμές και σε γραφήματα με 1 ή 2 κόμβους. Δεν αλλάζει όμως κάτι αυτό στις απαιτήσεις του ερωτήματος.
Για τον αλγόριθμο dijkstra πρέπει να δώσουμε μόνοι μας τα βάρη των ακμών που συνδέουν τους κόμβους καθώς και πως συνδέονται μεταξύ τους;
Διότι στις υπάρχουσες συναρτήσεις έχουμε την δυνατότητα δημιουργίας/διαγραφής κλπ ακμών καθώς δηλωσης των τιμών των ακμων αλλά δεν υπάρχει συνάρτηση που να επιστρέφει τους κόμβους με τους οποίους συνδεεται ο κάθε κόμβος (όπως ήταν η συνάρτηση getNeighbors() στο BFS & DFS) ώστε να μπορέσουμε να "σκανάρουμε" το άγνωστο γράφημα.
Το γράφημα δίνεται έτοιμο κατά την εκτέλεση. Δεν χρειάζεται και δεν πρέπει να κάνετε παρεμβάσεις στο γράφημα, ούτε δημιουργία/διαγραφή ακμών, ούτε μεταβολές στο βάρος των ακμών. Διαβάστε προσεκτικά το “Description” του ερωτήματος και υλοποιήστε τον Dijkstra πχ. όπως είπαμε στο μάθημα.