ΗΥ-150 Πξνγξακκατησκόο Ταμηλόκεσε θαη Αλαδήτεσε

Σχετικά έγγραφα
ΗΥ-150. Ταξινόµηση και Αναζήτηση

Διάλεξη 17η: Ταξινόμηση και Αναζήτηση

ΗΥ-150. Προγραμματισμός

Ταξινόµηση και Αναζήτηση

ΗΥ-150. Προγραμματισμός

Ππογπαμμαηιζμόρ Ι (ΗΥ120)

Δηάιεμε 13: Αιγόξηζκνη Ταμηλόκεζεο

Απαντήσεις θέματος 2. Παξαθάησ αθνινπζεί αλαιπηηθή επίιπζε ησλ εξσηεκάησλ.

B-Δέλδξα. Τα B-δέλδξα ρξεζηκνπνηνύληαη γηα ηε αλαπαξάζηαζε πνιύ κεγάισλ ιεμηθώλ πνπ είλαη απνζεθεπκέλα ζην δίζθν.

Έλαο πίνακας σσμβόλων ππνζηεξίδεη δύν βαζηθέο ιεηηνπξγίεο:

ηδάζθσλ: εµήηξεο Εετλαιηπνύξ

Ενδεικτικά Θέματα Στατιστικής ΙΙ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Αιγόξηζκνη Γνκή επηινγήο. Πνιιαπιή Δπηινγή Δκθωιεπκέλεο Δπηινγέο. Δηζαγωγή ζηηο Αξρέο ηεο Δπηζηήκεο ηωλ Η/Υ. introcsprinciples.wordpress.

Μονοψϊνιο. Αγνξά κε ιίγνπο αγνξαζηέο. Δύναμη μονοψωνίος Η ηθαλόηεηα πνπ έρεη ν αγνξαζηήο λα επεξεάζεη ηελ ηηκή ηνπ αγαζνύ.

ΣΥΣΤΗΜΑΤΑ ΑΛΓΕΒΡΑ Α ΛΥΚΕΙΟΥ. 1. Να ιπζνύλ ηα ζπζηήκαηα. 1 0,3x 0,1y x 3 3x 4y 2 4x 2y ( x 1) 6( y 1) (i) (ii)

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΣΙΚΗ ΚΤΣΑΛΟΓΡΟΜΙΑ 2007 ΓΙΑ ΣΟ ΓΤΜΝΑΙΟ Παπασκευή 26 Ιανουαπίου 2007 Σάξη: Α Γυμνασίου ΥΟΛΕΙΟ..

Κβαντικοί Υπολογισμοί. Πέκπηε Γηάιεμε

iii. iv. γηα ηελ νπνία ηζρύνπλ: f (1) 2 θαη

Προγραμματισμός Αναδρομή

Κευάλαιο 8 Μονοπωλιακή Συμπεριφορά- Πολλαπλή Τιμολόγηση

2 η Ε π α ν α λ η π τ ι κ ή Ά σ κ η σ η

ΣΕΙ Δυτικήσ Μακεδονίασ, Παράρτημα Καςτοριάσ Τμήμα Πληροφορικήσ και Τεχνολογίασ Υπολογιςτών

Προγραμματισμός Αναδρομή

Προγραµµατισµός. Αναδροµή (1/2)

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΣΑΞΖ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γευηέρα 11 Ηουνίου 2018 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

Παιχνίδι γλωζζικής καηανόηζης με ζχήμαηα!

Δυναμικοί πίνακες. Πνιιέο δνκέο δεδνκέλσλ πινπνηνύληαη κε ρξήζε πηλάθσλ. π.ρ. Σηνίβεο. α β γ δ. tail. head % N. Οπξέο Ν-1. θάησ όξην.

ΔΕΟ 13. Ποσοτικές Μέθοδοι. θαη λα ππνινγίζεηε ην θόζηνο γηα παξαγόκελα πξντόληα. Να ζρεδηαζηεί γηα εύξνο πξντόλησλ έσο

ΔΝΓΔΙΚΤΙΚΔΣ ΛΥΣΔΙΣ ΣΤΑ ΜΑΘΗΜΑΤΙΚΑ ΚΑΤΔΥΘΥΝΣΗΣ Γ ΛΥΚΔΙΟΥ ΓΔΥΤΔΡΑ 27 ΜΑΪΟΥ 2013

Γ ΣΑΞΖ ΔΝΗΑΗΟΤ ΛΤΚΔΗΟΤ ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΘΔΣΗΚΩΝ ΚΑΗ ΟΗΚΟΝΟΜΗΚΩΝ ΠΟΤΓΩΝ ΤΝΑΡΣΖΔΗ ΟΡΗΑ ΤΝΔΥΔΗΑ (έως Θ.Bolzano) ΘΔΜΑ Α

(Ενδεικηικές Απανηήζεις) ΘΔΜΑ Α. Α1. Βιέπε απόδεημε Σει. 262, ζρνιηθνύ βηβιίνπ. Α2. Βιέπε νξηζκό Σει. 141, ζρνιηθνύ βηβιίνπ

Άμεσοι Αλγόριθμοι: Προσπέλαση Λίστας (list access)

Hellas online Προεπιλεγμένες ρσθμίσεις για FritzBox Fon WLAN 7140 (Annex B) FritzBox Fon WLAN Annex B ( )

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΕΣΑΙΡΕΙΑ ΜΑΘΗΜΑΤΙΚΗ ΣΚΥΤΑΛΟΓΡΟΜΙΑ 2015 ΓΙΑ ΤΟ ΓΥΜΝΑΣΙΟ Τεηάπηη 28 Ιανουαπίου 2015 ΛΔΥΚΩΣΙΑ Τάξη: Α Γυμναζίου

Βάσεις Δεδομέμωμ. Εξγαζηήξην V. Τκήκα Πιεξνθνξηθήο ΑΠΘ

ΘΔΜΑ 1 ο Μονάδες 5,10,10

x x x x tan(2 x) x 2 2x x 1

Εργαστήριο 2: Πίνακες

ΟΠΤΙΚΗ Α. ΑΝΑΚΛΑΣΖ - ΓΗΑΘΛΑΣΖ

Δξγαζηεξηαθή άζθεζε 03. Σηεξενγξαθηθή πξνβνιή ζην δίθηπν Wulf

1. Οδηγίερ εγκαηάζηαζηρ και σπήζηρ έξςπνυν καπηών και τηθιακών πιζηοποιηηικών με σπήζη ηος λογιζμικού Μοzilla Thunderbird

Διάρηζηα Δπηθαιύπηνληα Γέλδξα

ΑΛΛΑΓΗ ΟΝΟΜΑΣΟ ΚΑΙ ΟΜΑΔΑ ΕΡΓΑΙΑ, ΚΟΙΝΟΥΡΗΣΟΙ ΦΑΚΕΛΟΙ ΚΑΙ ΕΚΣΤΠΩΣΕ ΣΑ WINDOWS XP

Αντισταθμιστική ανάλυση

ΚΕΦ. 2.3 ΑΠΟΛΤΣΗ ΣΘΜΗ ΠΡΑΓΜΑΣΘΚΟΤ ΑΡΘΘΜΟΤ

Γηζδηάζηαηνη Πίλαθεο

Ηλεκηπονικά Απσεία και Διεπαθέρ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙ ΜΟ

ΔΙΑΓΩΝΙΣΜΑ ΣΤΗ ΦΥΣΙΚΗ. Ύλη: Εσθύγραμμη Κίνηζη

x-1 x (x-1) x 5x 2. Να απινπνηεζνύλ ηα θιάζκαηα, έηζη ώζηε λα κελ ππάξρνπλ ξηδηθά ζηνπο 22, 55, 15, 42, 93, 10 5, 12

ΑΠΟΛΤΣΗΡΙΔ ΔΞΔΣΑΔΙ Γ ΣΑΞΗ ΔΠΔΡΙΝΟΤ ΓΔΝΙΚΟΤ ΛΤΚΔΙΟΤ ΑΒΒΑΣΟ 23 MAΪΟΤ ΑΔΠΠ

ΕΞΙΣΩΣΕΙΣ. (iv) (ii) (ii) (ii) 5. Γηα ηηο δηάθνξεο ηηκέο ηνπ ι λα ιπζνύλ νη εμηζώζεηο : x 6 3 9x

ΓΗΑΓΩΝΗΣΜΑ ΣΤΑ ΜΑΘΖΜΑΤΗΚΑ. Ύλη: Μιγαδικοί-Σσναρηήζεις-Παράγωγοι Θεη.-Τετν. Καη Εήηημα 1 ο :

Γοκή επαλάιευες Δληοιές Όζο & Μέτρης_όηοσ

ΜΑΘΗΜΑΤΙΚΑ ΘΔΤΙΚΗΣ ΚΑΙ ΤΔΦΝΟΛΟΓΙΚΗΣ ΚΑΤΔΥΘΥΝΣΗΣ Β ΛΥΚΔΙΟΥ ΤΔΣΤ(1) ΣΤΑ ΓΙΑΝΥΣΜΑΤΑ

ΚΤΠΡΙΑΚΗ ΜΑΘΗΜΑΣΙΚΗ ΔΣΑΙΡΔΙΑ ΠΑΓΚΤΠΡΙΟ ΓΙΑΓΩΝΙΜΟ Α ΛΤΚΔΙΟΤ. Ημεπομηνία: 10/12/11 Ώπα εξέτασηρ: 09:30-12:30 ΠΡΟΣΔΙΝΟΜΔΝΔ ΛΤΔΙ

Δπηιέγνληαο ην «Πξνεπηινγή» θάζε θνξά πνπ ζα ζπλδέεζηε ζηελ εθαξκνγή ζα βξίζθεζηε ζηε λέα ρξήζε.

(γ) Να βξεζεί ε ρξνλνεμαξηώκελε πηζαλόηεηα κέηξεζεο ηεο ζεηηθήο ηδηνηηκήο ηνπ ηειεζηή W.

Να ζρεδηάζεηο ηξόπνπο ζύλδεζεο κηαο κπαηαξίαο θαη ελόο ιακπηήξα ώζηε ν ιακπηήξαο λα θσηνβνιεί.

Constructors and Destructors in C++

Στόχοι και αντικείμενο ενότητας. Πέρασμα Πίνακα σε Συνάρτηση (συν.) Πέρασμα Πίνακα σε Συνάρτηση. #8.. Ειδικά Θέματα Αλγορίθμων

ΔΝΓΔΙΚΣΙΚΔ ΛΤΔΙ ΣΑ ΜΑΘΗΜΑΣΙΚΑ ΠΡΟΑΝΑΣΟΛΙΜΟΤ 2017

Δομές Δεδομένων & Αλγόριθμοι

Άσκηση 1 - Μοπυοποίηση Κειμένου

H ΜΑΓΕΙΑ ΤΩΝ ΑΡΙΘΜΩΝ

Η/Υ A ΤΑΞΕΩΣ ΑΕ Συστήματα Αρίθμησης. Υποπλοίαρχος Ν. Πετράκος ΠΝ

Μνλνδηάζηαηνη Πίλαθεο Λπκέλεο Αζθήζεηο. Άζθεζε 1. Πνηά ζα είλαη ηα πεξηερόκελα ηνπ πίλαθα Α κεηά ηελ εθηέιεζε ηνπ παξαθάησ αιγνξίζκνπ;

ΠΛΗ36. Άσκηση 1. Άσκηση 2. Οη δηεπζύλζεηο ησλ 4 σλ ππνδηθηύσλ είλαη νη αθόινπζεο. Υπνδίθηπν Α: /27 Υπνδίθηπν Β:

ΠΑΝΔΛΛΑΓΗΚΔ ΔΞΔΣΑΔΗ Γ ΖΜΔΡΖΗΟΤ ΓΔΝΗΚΟΤ ΛΤΚΔΗΟΤ Γεσηέρα 10 Ηοσνίοσ 2019 ΔΞΔΣΑΕΟΜΔΝΟ ΜΑΘΖΜΑ: ΜΑΘΖΜΑΣΗΚΑ ΠΡΟΑΝΑΣΟΛΗΜΟΤ. (Ενδεικηικές Απανηήζεις)

ΑΠΛΟΠΟΙΗΗ ΛΟΓΙΚΩΝ ΤΝΑΡΣΗΕΩΝ ΜΕ ΠΙΝΑΚΕ KARNAUGH

Ζαχαρίας Μ. Κοντοπόδης Εργαστήριο Λειτουργικών Συστημάτων ΙΙ

ΜΑΘΗΜΑ: ΜΑΘΗΜΑΤΙΚΑ ΠΡΟΣΑΝΑΤΟΛΙΣΜΟΥ Γ ΛΥΚΕΙΟΥ

ΠΑΡΑΡΣΗΜΑ Δ. ΔΤΡΔΗ ΣΟΤ ΜΔΣΑΥΗΜΑΣΙΜΟΤ FOURIER ΓΙΑΦΟΡΩΝ ΗΜΑΣΩΝ

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΛΓΟΡΙΘΜΟΙ ΕΡΓΑΣΤΗΡΙΟ

f '(x)g(x)h(x) g'(x)f (x)h(x) h'(x) f (x)g(x)

Master Class 3. Ο Ν.Ζανταρίδης προτείνει θέματα Μαθηματικών Γ Λσκειοσ ΘΕΜΑ 1.

ΓΔΧΜΔΣΡΙΑ ΓΙΑ ΟΛΤΜΠΙΑΓΔ

ΕΙΣΑΓΩΓΗ ΣΤΗ ΘΕΩΡΙΑ ΣΗΜΑΤΩΝ & ΣΥΣΤΗΜΑΤΩΝ. ΜΕΤΑΣΦΗΜΑΤΙΣΜΟΣ Laplace

Κεθάιαην 20. Ελαχιστοποίηση του κόστους

α) ηε κεηαηόπηζε x όηαλ ην ζώκα έρεη κέγηζην ξπζκό κεηαβνιήο ζέζεο δ) ην κέγηζην ξπζκό κεηαβνιήο ηεο ηαρύηεηαο

Γ7.5 Αλγόριθμοι Αναζήτησης. Γ Λυκείου Κατεύθυνσης

Αζκήζεις ζτ.βιβλίοσ ζελίδας 13 14

7. ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΩΤΗΣΕΙΣ ΑΣΚΗΣΕΙΣ. 3. Έλαο θαηαρσξεηήο SISO ησλ 4 bits έρεη: α) Μία είζνδν, β) Δύν εηζόδνπο, γ) Σέζζεξεηο εηζόδνπο.

Άζκηζη ζτέζης κόζηοσς-τρόνοσ (Cost Time trade off) Καηαζκεσαζηική ΑΔ

Σρήκα Α. Γξάθνπκε ηα ζηνηρεία ηνπ Πξνκεζεπηή θαη παηάκε Δηζαγσγή. Σρήκα Β1

Επαναληπτική Άσκηση - Δέντρα

ΘΔΚΑ ΡΖΠ ΑΛΑΓΛΩΟΗΠΖΠ

Φςζική Πποζαναηολιζμού Γ Λςκείος. Αζκήζειρ Ταλανηώζειρ 1 ο Φςλλάδιο

Δξγαιεία Καηαζθεπέο 1 Σάμε Σ Δ.Κ.Φ.Δ. ΥΑΝΙΧΝ ΠΡΧΣΟΒΑΘΜΙΑ ΔΚΠΑΙΓΔΤΗ. ΔΝΟΣΗΣΑ 11 ε : ΦΧ ΔΡΓΑΛΔΙΑ ΚΑΣΑΚΔΤΔ. Καηαζθεπή 1: Φαθόο κε ζσιήλα.

Λεκηική έκθραζη, κριηική, οικειόηηηα και ηύπος δεζμού ζηις ζηενές διαπροζωπικές ζτέζεις

ΓΙΑΙΡΔΣΟΣΗΣΑ. Οπιζμόρ 1: Έζηω d,n. Λέκε όηη ν d δηαηξεί ηνλ n (ζπκβνιηζκόο: dn) αλ. ππάξρεη c ηέηνην ώζηε n. Θεώπημα 2: Γηα d,n,m,α,b ηζρύνπλ:

Αιγόξηζκνη Βαζηθέο αιγνξηζκηθέο ιεηηνπξγίεο ζε Γνκέο Γεδνκέλσλ (Πίλαθεο) Δηζαγσγή ζηηο Αξρέο ηεο Δπηζηήκεο ησλ Ζ/Υ

ΡΤΘΜΙΕΙ ΔΙΚΣΤΟΤ ΣΑ WINDOWS

3 η Ε π α ν α λ η π τ ι κ ή Ά σ κ η σ η

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Δομές Δεδομένων & Αλγόριθμοι

Τίτλος Μαθήματος: Ηλεκτρονικοί Υπολογιστές IΙΙ. Διδάσκων: Επίκουρος Καθηγητής Αθανάσιος Σταυρακούδης

Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο κόζηος ανά μονάδα παραγωγής. Q Η ζσνάρηηζη μέζοσ κόζηοσς μας δίνει ηο ζηαθερό κόζηος ανά μονάδα παραγωγής

Αζθήζεηο 5 νπ θεθαιαίνπ Crash course Step by step training. Dipl.Biol.cand.med. Stylianos Kalaitzis

Transcript:

ΗΥ-150 Πξνγξακκατησκόο Ταμηλόκεσε θαη Αλαδήτεσε

To πξόβιεκα ηεο Αλαδήηεζεο Γνζέληνο δεδνκέλσλ, ι.ρ. ζε Πίλαθα (P) Χάρλσ λα βξσ θάπνην ζπγθεθξηκέλν ζηνηρείν (key) Αλ ν πίλαθαο δελ είλαη ηαμηλνκεκέλνο Γξακκηθή Αλαδήηεζε (Linear search) Απινύζηεξε δπλαηή Σύγθξηλε ζεηξηαθά θάζε ζηνηρείν ηνπ πίλαθα κε ηελ ηηκή-θιεηδί Φξήζηκν γηα κηθξνύο θαη ΜΗ ηαμηλνκεκέλνπο πίλαθεο int linearsearch(int P[],int apo,int eos,int key) { int i; } for (i = apo; i <= eos; ++i) { if (P[i] == key) return i; } return -1;

To πξόβιεκα ηεο Αλαδήηεζεο Αλ ν πίλαθαο είλαη ηαμηλνκεκέλνο ι.ρ. ηειεθσληθόο θαηάινγνο Μπνξώ λα θάλσ πνιύ πην γξήγνξα ηελ αλαδήηεζε Γπαδηθή Αλαδήηεζε (Binary Search) Σπγθξίλεη ην P[middle] ζηνηρείν κε ην δεηνύκελν key Αλ είλαη ίζα βξέζεθε Αλ key < P[middle], ςάρλεη ζην 1 ν κηζό ηνπ πίλαθα Αλ key > P[middle], ςάρλεη ζην 2 ν κηζό ηνπ πίλαθα Δπαλάιεςε Πνιύ γξήγνξε ρεηξόηεξε πεξίπησζε log 2 (N), Ν # ζηνηρείσλ πίλαθα Πίλαθαο 100 ζηνηρείσλ ρξεηάδεηαη ην πνιύ 7 βήκαηα Πίλαθαο 100.000 ζηνηρείσλ ρξεηάδεηαη ην πνιύ 20 βήκαηα Πίλαθαο 100.000.000 ζηνηρείσλ ρξεηάδεηαη ην πνιύ 27 βήκαηα

Binary Search Υινπνίεζε κε επαλάιεςε int binaryloopsearch(int p[], int searchkey, int low, int high) { int middle; while ( low <= high ) { middle = (low + high ) / 2; } if (searchkey == p[middle]) return middle; else if (searchkey < p[middle] ) high = middle 1; else low = middle + 1; } return -1;

Binary Search Υινπνίεζε κε αλαδξνκή int binarysearch(int p[], int searchkey, int low, int high) { int middle; middle = (low + high ) / 2; if (high < low) return -1; if (searchkey == p[middle]) return middle; else if (searchkey < p[middle]) return binarysearch(p, searchkey, low, middle-1); else return binarysearch(p, searchkey, middle+1,high); } return -1;

To πξόβιεκα ηεο Ταμηλόκεζεο Γνζέληνο δεδνκέλσλ, ι.ρ. ζε Πίλαθα (P) Να γίλεη αλαδηάηαμε ησλ ζηνηρείσλ ηνπ ώζηε λα βξεζνύλ ζε αύμνπζα (ή θζίλνπζα) ζεηξά, δειαδή ηαμηλνκεκέλα 12 31 4 32 134 13 42 1 43 2 1 2 4 12 13 31 32 42 43 134 Λύζε : Υπάξρνπλ δηάθνξνη αιγόξηζκνη πνπ ην πεηπραίλνπλ θαη δηαθνξνπνηνύληαη ζην ππνινγηζηηθό Straight Selection Sort - Bubble Sort : Ο(Ν 2 ) Quick Sort : O(N log N)

Ταμηλόκεζε κε επηινγή

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 36 24 10 6 12 Φσξίδεη λνετά τνλ πίλαθα σε 2 κέξε: - Ταμηλνκεκέλν - Με ταμηλνκεκέλν Σε θάζε επαλάιεςε βξίσθεη τν κεγαιύτεξν στνηρείν θαη τν αλταιιάσεη κε τν πξώτν τνπ αταμηλόκετνπ ππνπίλαθα.

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 36 24 10 6 12 U N S O R T E D

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 12 24 10 6 36 SORTED U N S O R T E D

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 12 6 24 10 36 6 12 36 SORTED U N S O R T E D

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 12 6 106 24 10 36 24 SORTED U N S O R T E D 12 36

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 12 6 10 24 SORTED U N S O R T E D 36

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 10 6 12 24 36 UNSORTED S O R T E D

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 10 6 12 24 36 UNSORTED S O R T E D

Ταμηλόκεζε κε επηινγή values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 6 10 12 24 36 S O R T E D

Ταμηλόκεζε κε επηινγή: Απαξίζκεζε ζπγθξίζεσλ (ππνινγηζηηθό θόζηνο) values [ 0 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] 6 10 12 24 36 4 compares for values[4] 3 compares for values[3] 2 compares for values[2] 1 compare for values[1] = 4 + 3 + 2 + 1

Selection sort void selectionsort(int arr[], int n) { int i, j, minindex, tmp; for (i = 0; i < n - 1; i++) { minindex = i; for (j = i + 1; j < n; j++) if (arr[j] < arr[minindex]) minindex = j; if (minindex!= i) { tmp = arr[i]; arr[i] = arr[minindex]; arr[minindex] = tmp; } } }

QSort: Χεπδνθώδηθαο QSort(Πίλαθαο Π, δείθηεο Α, δείθηεο Τ) Ταμηλνκεί ηνλ ππνπίλαθα Π[Α] έσο Π[Τ] Αλ Α Τ, επέζηξεςε Γηαθνξεηηθά, Γηάιεμε έλα ζηνηρείν ηνπ πίλαθα (pivot), έζησ ην κεζαίν Λ = Π[(Α+Τ)/2] Βξεο ηελ ζέζε Θ ηνπ Λ πνπ ζα έρεη ζηελ ηειηθή ηαμηλόκεζε Μεηέθεξε ηα ζηνηρεία ηνπ Π[Α] έσο θαη Π[Τ] έηζη ώζηε: Π[Φ] Λ, αλ Φ < Θ Π[Φ] > Λ, αλ Φ > Θ QSort(Π, Α, Θ-1) QSort(Π, Θ+1, Τ)

Qsort void qsort(int v[], int left, int right) { int i, last; if(left >= right) return; swap(v, left, (left + right)/2); last = left; for (i = left+1; i <= right; i++) if (v[i] < v[left]) swap(v, ++last, i); swap(v, left, last); qsort(v, left, last-1); qsort(v, last+1, right); } void swap(int v[], int i, int j) { int temp; temp = v[i]; v[i] = v[j]; v[j] = temp; }