Alfionsort

Το μέρος όπου μπορούν οι διαγωνιζόμενοι - και όχι μόνο - να μιλήσουν σχετικά με οτιδήποτε.
Απάντηση
sotiris
Δημοσιεύσεις: 422
Εγγραφή: Τρί Φεβ 10, 2009 9:49 pm

Alfionsort

Δημοσίευση από sotiris » Παρ Νοέμ 20, 2009 8:06 pm

Καλησπέρα,
Γράφω αυτό το μήνυμα για να σας ενημερώσω για έναν καινούργιο αλγόριθμο ταξινόμησης. Είτε θέλετε να το πιστεύετε είτε όχι αυτός ο αλγόριθμος φτιάχτηκε από εμένα.
Ο πηγαίος κώδικας μπορεί να βρεθεί στο

http://www.planet-source-code.com/vb/sc ... 7&lngWId=3

Επίσης είχε βγει ένα άρθρο και στην τοπική εφημερίδα του νομού μου αλλά από ότι βλέπω δεν έχει περαστεί ακόμα στην βάση δεδομένων για να σας έδεινα το link για να το διαβάσετε.
Λοιπόν σχετικά με τον αλγόριθμο : είναι ένας αλγόριθμος πολυπλοκότητας
Ο( (Ν / 2 * Ν/2) + (Ν/2) ) . O αλγόριθμος ταξινόμησης μου τον οποίο ονόμασα Alfion sort βασίζεται στην τεχνική διαίρει και βασίλευε και είναι αναδρομικός. Λοιπόν η διαδικασία έχει εώς εξής 1ον) Έχουμε έναν πίνακα ο οποίος έχει μία αρχή και ένα τέλος.
2ον) Αρχίζουμε μία γραμμική αναζήτηση από το 1....Ν στοχείο του πίνακα μας και βρίσκουμε το μεγαλύτερο και το τελευταίο στοιχείο του πίνακα
3ον) Έπειτα αλλάζουμε το μικρότερο στοιχείο με το αρχικό στοιχείο του πίνακα και έπειτα το μεγαλύτερο στοιχείο με το τελευταίο στοιχείο του πίνακα μας ή αντιστρόφως ανάλογα τι έχουμε επιλέξει φθίνουσα ή αύξουσα σειρά.
4ον) Ξανακάνουμε μία αναζήτηση πάλι για να βρούμε πάλι το μικρότερο και το μεγαλύτερο στοιχείο του πίνακα μας όμως αυτή την φορά θα αυξήσουμε την αρχή της αναζήτησης κατά ένα και το τέλος της αναζήτησης κατά 1. Δηλαδή start += 1; end -=1; Με αποτέλεσμα η αναζήτηση να είναι τώρα δύο φορές πιο γρήγορη.
5ον) Επαναλαμβάνουμε πάλι τα ίδια βήματα μέχρι να ταξινομηθεί ο πίνακας.

Σύγγριση με αλγόριθμος πολυπλοκότητας Ο(Ν^2)
Για 10 στοιχεία είναι 10 ^ 2 = 100
Ενώ στον δικό μου φτάνει τα 30 μόνο.

Ενώ στους τετραγωνικόυς έχουμε συνέχεια 10 + 10 + 10 ... + 10 = 100
στον δικό μου έχουμε 10 + 8 + 6 + 4 + 2 = 30.

Αυτά είχα να πω.
Σωτήριος Νικολουτσόπουλος
Τελευταία επεξεργασία από το μέλος sotiris την Τετ Νοέμ 25, 2009 6:18 pm, έχει επεξεργασθεί 1 φορά συνολικά.
Εικόνα

userresu
Δημοσιεύσεις: 191
Εγγραφή: Τρί Δεκ 16, 2008 9:53 pm

Re: Alfionsort

Δημοσίευση από userresu » Σάβ Νοέμ 21, 2009 3:07 pm

Εικόνα

Άβαταρ μέλους
thetrojan01
Δημοσιεύσεις: 712
Εγγραφή: Κυρ Δεκ 21, 2008 2:45 pm
Τοποθεσία: Ρόδος
Επικοινωνία:

Re: Alfionsort

Δημοσίευση από thetrojan01 » Τετ Νοέμ 25, 2009 1:53 am

Κάτι σαν διπλή Selection Sort... Τόσον καιρό έψαχνα να βρω ποια μου θύμιζε, γιατί κάτι τέτοιο το είχα ξαναδεί κάπου εκτώς της ταξινόμησης στη ζωή μου (οκ δεν είναι ακριβώς το ίδιο)... ποια μου θύμιζε... και τελικά θυμήθηκα

Min-Max sort:
http://portal.acm.org/citation.cfm?id=322992

Year of Publication: 1987

Ο ίδιος αλγόριθμος με πιο κατατοπιστικό όνομα... Φίλε Σωτήρη, νομίζω ότι σε πρόλαβαν :|


ακόμα...
Είτε θέλεις να το πιστεύετε είτε όχι αυτός ο αλγόριθμος φτιάχτηκε από εμένα.
Σε ποιον είχες απευθύνει αρχικά το post και μετά άλλαξες τον αριθμό; :lol: (σε πειράζω!)
svyr cercrv an inevrfnv cbyl tvn an gb iyrcrvf nhgb... cvtrar xnzvn ibygn yrj tj.

sotiris
Δημοσιεύσεις: 422
Εγγραφή: Τρί Φεβ 10, 2009 9:49 pm

Re: Alfionsort

Δημοσίευση από sotiris » Τετ Νοέμ 25, 2009 3:14 pm

Μισό λεπτό! Δεν είναι το ίδιο! Άλλη διαδικασία κάνει ο δικός μου αλγόριθμος και άλλη διαδικασία κάνει αυτή η ταξινόμηση που λες εσύ.
Εικόνα

Άβαταρ μέλους
thetrojan01
Δημοσιεύσεις: 712
Εγγραφή: Κυρ Δεκ 21, 2008 2:45 pm
Τοποθεσία: Ρόδος
Επικοινωνία:

Re: Alfionsort

Δημοσίευση από thetrojan01 » Πέμ Νοέμ 26, 2009 11:08 pm

Α ναι; Καλά θα το ελέξω μόλις πάω Ρόδο. Πάντως το ίδιο μου φαίνεται, εξεφρασμένο με διαφορετικό τρόπο, πάντως ως σκέψη διαβάζω να είναι η ίδια.
svyr cercrv an inevrfnv cbyl tvn an gb iyrcrvf nhgb... cvtrar xnzvn ibygn yrj tj.

Απάντηση