παράδειγμα με πίνακα 10 θέσεων
Για i από 2 μέχρι 10
Για j από 1 μέχρι i-1
Αν a[j]<a τότε
Αντιμετάθεσε a[j],a
Τέλος_αν
Τέλος_επανάληψης
Τέλος_επανάληψης
άλλαξα το i με το k γιατί δεν εμφανιζόταν σωστά
Για k από 2 μέχρι 10
Για j από 1 μέχρι k-1
Αν a[j]<a[k] τότε
Αντιμετάθεσε a[j],a[k]
Τέλος_αν
Τέλος_επανάληψης
Τέλος_επανάληψης
Για παραλλαγή του insertion sort μου φαίνεται.
Από την αρχή του πίνακα και μέχρι τον δείκτη (k-1) η λίστα παραμένει ταξινομημένη. Για το κάθε επόμενο στοιχείο (δείκτης k) βρίσκουμε την σωστή θέση που πρέπει να τοποθετηθεί (j) και το τοποθετούμε εκεί, σπρώχνοντας ταυτόχρονα τα υπόλοιπα στοιχεία που είναι μεγαλύτερα μια θέση δεξιά.
Η μόνη διαφορά σ' αυτόν τον αλγόριθμο είναι ότι αντί να σπρώξει τα μεγαλύτερα στοιχεία δεξιά κατά μία θέση, αυτός συνεχίζει να ξανα-ταξινομεί αυτά τα στοιχεία μεταφέροντας τα στην θέση k και μετά ξανά πάλι πίσω στην νέα τους σωστή θέση. Η καρδιά όμως του αλγόριθμου είναι το insertion sort. Οι μεταθέσεις που κάνει αυτός ο αλγόριθμος είναι οι ίδιες (σε πλήθος) με τον insertion. Το μόνο περιττό που έχει είναι οι επιπλέον συγκρίσεις, αφού έχουμε βρει την σωστή θέση του νέου στοιχείου.
Μάλλον ναι του insertion sort (Ταξινόμηση με εισαγωγή)
http://www.cs.ucy.ac.cy/courses/EPL231/2010-winter/notes/notes15-16.pdf
Σελ 7-8
users.sch.gr/vasisoulas/kef3/sorte.doc
Αναποδη φυσαλιδα