Αλγοριθμοι dfs-bfs
-
- Buffer underflow exception
- Posts: 3
- Joined: Tue Mar 29, 2011 11:54 am
- Academic status: N>4
- Gender: ♂
Αλγοριθμοι dfs-bfs
Καλησπερα παιδια. Ειμαι καινουργιος στο forum και θα ηθελα την βοηθεια σας
Εχω ενα προβλημα και πρεπει να το λυσω με 2 τροπους. Με dfs και bfs
Εχω 25 πινακες (2χ2) και γνωριζοντας το πρωτο στοιχειο και κανοντας καποιες συγκρισεις μεταξυ των πινακων, πρεπει να τα βαλω στην σωστη σειρα. Δεν γνωριζω ουτε την σειρα ουτε το τελευταιο στοιχειο. Οσο το εψαξα κατεληξα οτι το dfs και bfs ειναι η καλυτερη περιπτωση. Αυτοι οι αλγοριθμοι ομως χρησιμοποιουν δεντρα. Πως μπορω να περασω τους 25 πινακες που εχω ωστε να τους βλεπει ο καθε αλγοριθμος; Πρεπει να περασω χειροκινητα το δεντρο με τις ριζες και τα παιδια του ή αρκει να περασω τους 25 πινακες και με εναν αλγοριθμο να δημιουργησει το δεντρο;
Ευχαριστω
Εχω ενα προβλημα και πρεπει να το λυσω με 2 τροπους. Με dfs και bfs
Εχω 25 πινακες (2χ2) και γνωριζοντας το πρωτο στοιχειο και κανοντας καποιες συγκρισεις μεταξυ των πινακων, πρεπει να τα βαλω στην σωστη σειρα. Δεν γνωριζω ουτε την σειρα ουτε το τελευταιο στοιχειο. Οσο το εψαξα κατεληξα οτι το dfs και bfs ειναι η καλυτερη περιπτωση. Αυτοι οι αλγοριθμοι ομως χρησιμοποιουν δεντρα. Πως μπορω να περασω τους 25 πινακες που εχω ωστε να τους βλεπει ο καθε αλγοριθμος; Πρεπει να περασω χειροκινητα το δεντρο με τις ριζες και τα παιδια του ή αρκει να περασω τους 25 πινακες και με εναν αλγοριθμο να δημιουργησει το δεντρο;
Ευχαριστω
- cypher
- Venus Former Team Member
- Posts: 6207
- Joined: Mon Sep 29, 2008 9:12 pm
- Academic status: Alumnus/a
- Gender: ♂
Re: Αλγοριθμοι dfs-bfs
Γιατι να τα αναπαραστησεις σε δένδρο; Απλή ταξινόμηση σε σειρά δεν θές να κάνεις μεταξύ τους η κατάλαβα λάθος; Κάνε override την equals στην δομή που εχεις για τον κάθε 2χ2 πίνακα και κάνε την απλή sort() της java που χρησιμοποιεί και quicksort.







- ja_the_invincible
- Wow! Terabyte level
- Posts: 2414
- Joined: Tue Dec 01, 2009 12:33 am
- Academic status: N>4
- Gender: ♂
- Location: Κάπου στο matrix...
Re: Αλγοριθμοι dfs-bfs
Αν θες να εξερευνήσεις ένα χώρο με bfs,dfs με οποιαδήποτε στοιχεία δεν είναι ανάγκη να φτιάξεις δέντρο εκτός και αν έχουν σχέση πατέρα-παιδιού.Το καλύτερο που μπορείς να κάνεις για αναπαράσταση γραφήματος είναι μία λίστα γειτνίασης ή μία μήτρα(διπλός πίνακας) γειτνίασης.Εκεί για κάθε στοιχείο της λίστας κρατάει τους "γείτονες" του ή ακόμα καλύτερα μπορείς να φτιάξεις μία δομή που κρατάει κόμβους και άλλη μία που κρατάει ακμές.Κάθε υλοποίηση έχει τα καλά και τα κακά της..Ελπίζω να βοήθησα 

f**k robin and batman i'm robbin with a bat man
-
- Buffer underflow exception
- Posts: 3
- Joined: Tue Mar 29, 2011 11:54 am
- Academic status: N>4
- Gender: ♂
Re: Αλγοριθμοι dfs-bfs
Δεν εχω να κανω με ταξινομηση πινακων. Μπορει σε καθε ελεγχο να ταιριαζουν παραπανω απο ενα στοιχεια. Οποτε αν παρει το ενα και φτασει σε αδιεξοδο, θα πρεπει να γυρισει πισω και να παρει καποιο αλλο απο αυτα που ταιριαζαν. Να σημειωσω οτι ειναι μοναδικη η σειρα που μπορουν να μπουν τα στοιχεια μου.
- tsilochr
- Wow! Terabyte level
- Posts: 3246
- Joined: Tue Mar 16, 2004 2:47 pm
- Academic status: PhD
- Gender: ♂
- Location: mm.aueb.gr
- Contact:
Re: Αλγοριθμοι dfs-bfs
Τα 25 πράγματα που έχεις μπορούν να αναπαρασταθούν ως γράφος; Ο γράφος πως σχηματίζεται; Είσαι σίγουρος ότι ο bfs/dfs σε καλύπτει; Τι ακριβώς ψάχνεις;
-
- Buffer underflow exception
- Posts: 3
- Joined: Tue Mar 29, 2011 11:54 am
- Academic status: N>4
- Gender: ♂
Re: Αλγοριθμοι dfs-bfs
Συγνωμη για την καθυστέρηση. Ειχα ενα μικρο προβλημα και δεν ειχα προσβαση σε ιντερνετ.
Ξανα γραφω το προβλημα καπως διαφορετικα.
Εχω 16 πινακες 2x2 που τα στοιχεια τους ειναι αριθμοι απο το 0 ως το 5.
Αυτοι οι πινακες θελουν να μπουν σαν puzzle με 16 κομματια. Δηλαδη να ξεκιναω απο ενα κομματι και το καθε ενα να ταιριαζει με το δεξια του και το απο πανω του.
Μας ειπε ο καθηγητης να το κανουμε σε δυο προγραμματα. Το ενα με dfs και το αλλο με bfs και να δουμε πιο ειναι γρηγοροτερο. Κατα πασα πιθανοτητα ειναι σε μορφη δεντρου το προβλημα και πρεπει να εφαρμοσουμε πανω στο δεντρο τους αλγοριθμους. Πως μπορουμε να αναπαραστησουμε τους πινακες σε μορφη δεντρου και πως θα εφαρμοσουμε πανω τους μετα τους αλγοριθμους;
Ξανα γραφω το προβλημα καπως διαφορετικα.
Εχω 16 πινακες 2x2 που τα στοιχεια τους ειναι αριθμοι απο το 0 ως το 5.
Αυτοι οι πινακες θελουν να μπουν σαν puzzle με 16 κομματια. Δηλαδη να ξεκιναω απο ενα κομματι και το καθε ενα να ταιριαζει με το δεξια του και το απο πανω του.
Μας ειπε ο καθηγητης να το κανουμε σε δυο προγραμματα. Το ενα με dfs και το αλλο με bfs και να δουμε πιο ειναι γρηγοροτερο. Κατα πασα πιθανοτητα ειναι σε μορφη δεντρου το προβλημα και πρεπει να εφαρμοσουμε πανω στο δεντρο τους αλγοριθμους. Πως μπορουμε να αναπαραστησουμε τους πινακες σε μορφη δεντρου και πως θα εφαρμοσουμε πανω τους μετα τους αλγοριθμους;