ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2015-2016"

Transcript

1 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο Ευάγγελος Μαρκάκης Επικ. Καθηγητής

2 Τι θα µελετήσουµε? Πίνακες Β-δέντρα Δέντρα κόκκινου- µαύρου Δέντρα Σωροί Τυχαιοποιηµένα Δέντρα Ουρές προτεραιότητας Ουρές FIFO Δοµές Δεδοµένων 01-2

3 Τι είναι οι Δοµές Δεδοµένων? Δοµές Δεδοµένων 01-3

4 Τι είναι οι Δοµές Δεδοµένων? Webopedia: A scheme for organizing related pieces of information Wordnet: the organization of data (and its storage allocations in a computer) Wikipedia: a particular way of storing and organizing data in a computer so that it can be used efficiently. Wiktionary: An organization in software of data that allows more optimal searching, categorizing, or storage of information Δοµές Δεδοµένων 01-4

5 Αντικείµενο του µαθήµατος 1. Βασικές δοµές δεδοµένων Πίνακες, λίστες, ουρές, στοίβες, σωροί, δέντρα, Χρήση δοµών στην ανάπτυξη προγραµµάτων 3. Ρόλος δοµών στην αποδοτική υλοποίηση αλγορίθµων Θέµατα πολυπλοκότητας, χρήση χώρου/χρόνου Μια καλή ιδέα χρησιµοποιώντας τη λάθος δοµή µπορεί να χαραµισθεί 4. Ανεξαρτησία από γλώσσα προγραµµατισµού 5. Πρακτική εφαρµογή σε Java Δοµές Δεδοµένων 01-5

6 Αντικείµενο του µαθήµατος Απαιτούµενες γνώσεις Στοιχειώδης γνώση τουλάχιστον 1 γλώσσας προγραµµατισµού Ισχύει από αυτή τη χρονιά: Να έχετε περάσει ένα εκ των: Εισαγωγή στον Προγραµµατισµό Υπολογιστών (Java I) Προγραµµατισµός Υπολογιστών µε Java (Java II) Δεν µαθαίνουµε Java σε αυτό το µάθηµα! Παράλληλη παρακολούθηση στο 3 ο εξάµηνο Προγραµµατισµός Υπολογιστών µε C++ Δοµές Δεδοµένων 01-6

7 Διαλέξεις Διδάσκων Β. Μαρκάκης (markakis AT gmail. com) Ώρες διαλέξεων Τρίτη 13:00-15:00 (Δ Οικ.) Πέµπτη 15:00-17:00 (Αµφ. Β) Τα περισσότερα slides είναι ήδη στο eclass Θα υπάρξουν όµως κάποιες αλλαγές Κάθε αρχείο θα ανανεώνεται µετά την αντίστοιχη διάλεξη µε τυχόν διορθώσεις/παρατηρήσεις Δοµές Δεδοµένων 01-7

8 Εργαστήρια Τα εργαστήρια ξεκινούν την επόµενη εβδοµάδα Βοηθοί εργαστηρίων Κωνσταντίνος Γεωργούλας Κωνσταντίνος Καλαµπόκης Βασίλης Σπυρόπουλος Χρήστος Τσιλόπουλος Θα γίνουν 9 εργαστήρια κατά τη διάρκεια του εξαµήνου Δοµές Δεδοµένων 01-8

9 Εργαστήρια Τα εργαστήρια είναι προαιρετικά Σύντοµες προγραµµατιστικές ασκήσεις Ίδιες µε τις προηγούµενες χρονιές Υλοποίηση βασικών δοµών δεδοµένων Επίλυση αποριών και παροχή βοήθειας για τις εργασίες Δοµές Δεδοµένων 01-9

10 Πέντε τµήµατα εργαστηρίων Εργαστήρια Έστω Χ = τελευταίο ψηφίο του ΑΜ σας Τµήµα 1: Χ {0, 1}, Δευτέρα 11-1 Τµήµα 2: Χ {2, 3}, Τρίτη 7-9 Τµήµα 3: Χ {4, 5}, Τετάρτη 11-1 Τµήµα 4: Χ {6, 7}, Πέµπτη 7-9 Τµήµα 5: Χ {8, 9}, Παρασκευή 11-1 Θα σταλεί ανακοίνωση µε περισσότερες λεπτοµέρειες στο eclass Μην πηγαίνετε σε άλλο τµήµα παρά µόνο αν υπάρχει κώλυµα (λόγω δουλειάς, κτλ) µε το τµήµα που αντιστοιχεί στον ΑΜ σας Αν σε κάποιο τµήµα δεν υπάρχει διαθέσιµος χώρος για όλους θα γίνεται έλεγχος του ΑΜ σας Δοµές Δεδοµένων 01-10

11 Εργαστήρια Για όσους είναι στο Τµήµα 3: Χ {4, 5}, Τετάρτη 11-1 Υπάρχει επικάλυψη µε εργαστήριο της C++ Επιλέξτε τµήµα στη C++ διαφορετικό της τετάρτης Δοµές Δεδοµένων 01-11

12 Επικοινωνία Ώρες γραφείου (Δεριγνύ 12, 6ος όροφος): Τρίτη 15:00-17:00, Πέµπτη 14:00 15:00 Θα ανακοινωθούν επίσης και ώρες γραφείου των βοηθών για παροχή βοήθειας και επίλυση αποριών στις εργασίες Για οποιαδήποτε απορία µπορείτε να στέλνετε σε εµένα ή στους βοηθούς Μην ξεχνάτε το ονοµατεπώνυµό σας Αν δεν απαντήσω εντός 3 ηµερών, ξαναστείλτε... Δοµές Δεδοµένων 01-12

13 eclass Το υλικό του µαθήµατος (διαφάνειες, εργασίες, κτλ) θα διατίθεται µέσω του eclass: Γραφτείτε στο «Δοµές Δεδοµένων » Θα πρέπει να κοιτάτε τις ανακοινώσεις του µαθήµατος και το dias account σας τουλάχιστον 1 φορά την εβδοµάδα Ανακοινώσεις για τα εργαστήρια θα γίνονται επίσης µέσω του eclass Δοµές Δεδοµένων 01-13

14 Βαθµολόγηση Εργασίες: 3 µονάδες Τρεις εργασίες κατά τη διάρκεια του εξαµήνου 1 µονάδα η κάθε εργασία Οµάδες 2 ατόµων (ή µόνοι σας) Το επίπεδο δυσκολίας είναι τέτοιο ώστε να µπορούν να γίνουν και ατοµικά (προσπαθήστε όµως να είστε σε οµάδα) ΔΕΝ επιτρέπονται οµάδες µε πάνω από 2 άτοµα Για όσους δεν µπορέσουν να βρουν συνεργάτη, θα υπάρξει σχετική περιοχή συζητήσεων στο eclass, µε αυτόν τον σκοπό Οι βαθµοί εργασιών ισχύουν και για το Σεπτέµβρη (καθώς και αν γίνει έκτακτη εξεταστική), αλλά όχι για τον επόµενο χρόνο Δοµές Δεδοµένων 01-14

15 Για τους πιο τολµηρούς... Εργασία 4: Για όσους έχουν χρόνο και όρεξη να δουν κάτι παραπάνω για τη χρήση των δοµών Προϋπόθεση να έχετε παραδώσει και τις 3 άλλες εργασίες Αξία = 0.5 µονάδες extra Η καλύτερη από τις εργασίες που θα παραδοθούν θα πάρει και κάποιο βραβείο! Δοµές Δεδοµένων 01-15

16 Βαθµολόγηση Τελικές εξετάσεις: 8 µονάδες (δηλαδή 1 bonus) Εξεταστέα ύλη είναι ό,τι καλύψουµε κατά τη διάρκεια του εξαµήνου Πώς υπολογίζεται ο τελικός βαθµός? Για να περάσετε το µάθηµα πρέπει στο τελικό διαγώνισµα να γράψετε τουλάχιστον 3.5 στα 8 Έστω x ο συνολικός βαθµός σας από τις εργασίες, x [0, 3] Έστω y ο βαθµός από το διαγώνισµα, y [0, 8] Aν y 3.5, τότε τελικός βαθµός = x + y Δοµές Δεδοµένων 01-16

17 Βαθµολόγηση Πώς θα περάσω το µάθηµα? Μην αφήσετε το διάβασµα για το τέλος (η ύλη είναι αντικειµενικά µεγάλη, δεν θα προλάβετε) Ασχοληθείτε µε τις εργασίες Συνήθως όσοι ασχολούνται περνάνε Στατιστικά από πέρυσι: 171 από τους 182 που πέρασαν το Γενάρη είχαν κανει τουλάχιστον µια απο τις εργασίες Ρωτήστε ό,τι δεν καταλαβαίνετε, εκφράστε απορίες, προβληµατισµούς, σχόλια,... Προσπαθήστε πάντα να κατανοείτε την ιδέα πίσω από κάθε υλοποίηση που θα δείτε (η υλοποίηση σε Java είναι απλά το τελικό στάδιο, προέχει η σχεδίαση του κάθε αλγορίθµου) Δοµές Δεδοµένων 01-17

18 Σχετικά µε τις εργασίες... Σκοπός των εργασιών είναι η εξοικείωση µε τις βασικές δοµές δεδοµένων Κάθε εργασία επικεντρώνεται σε κάποια ή κάποιες δοµές και τη χρήση τους στην ανάπτυξη αλγορίθµων Για την επίλυση των εργασιών, µπορείτε να συζητάτε µεταξύ σας Όµως: Ο κώδικας πρέπει να γράφεται από κάθε οµάδα χωριστά!!! Δοµές Δεδοµένων 01-18

19 Σχετικά µε τις εργασίες... Μην βάζετε τον κώδικά σας στο GitHub ή σε άλλα open source repositories! Όλες οι εργασίες περνάνε από ειδικό πρόγραµµα που ελέγχει αντιγραφές (ελέγχονται αλλαγές ονοµάτων µεταβλητών, σχόλια, και πολλά άλλα χαρακτηριστικά) Δοµές Δεδοµένων 01-19

20 Σχετικά µε τις εργασίες... Τι περιβάλλον να χρησιµοποιήσω για την ανάπτυξη του κώδικα? (Java IDE s - Integrated Development Environments) Ό,τι θέλετε εσείς NetBeans Eclipse (υπάρχουν διάφορα άλλα) Command line Δοµές Δεδοµένων 01-20

21 Βιβλιογραφία Βασικό βιβλίο R. Sedgewick, Αλγόριθµοι σε Java, Μέρη 1-4, Κλειδάριθµος, Εναλλακτικό βιβλίο στη λίστα συγγραµµάτων R. Lafore, Αλγόριθµοι και Δοµές Δεδοµένων στη JAVA, Μ. Γκιούρδας, Άλλα βιβλία που µπορείτε να συµβουλευτείτε Σηµειώσεις Μάριου Συντιχάκη: Δοµές Δεδοµένων, 2005 (είναι ήδη διαθέσιµες στο eclass) T. Cormen, C. Leiserson, R. Rivest, C. Stein, Introduction to Algorithms, 3 rd edition, MIT Press, M. Goodrich, R. Tamassia, Data Structures and Algorithms in Java, John Wiley & Sons, M.Α. Weiss, Data Structures and Problem Solving Using Java, Addison- Wesley, Δοµές Δεδοµένων 01-21

22 Περιεχόµενο Εισαγωγή στους αλγόριθµους Προβλήµατα συνδετικότητας και αλγόριθµοι ένωσης εύρεσης (union-find) Υλοποίηση και ανάλυση αλγορίθµων Πίνακες, Συνδεδεµένες λίστες Στοίβες, Ουρές Δέντρα Ταξινόµηση Βασικοί αλγόριθµοι (insertion sort, bubblesort, selection sort) Ταξινόµηση µε συγχώνευση (mergesort) Quicksort Σωροί, Ταξινόµηση µε σωρό (heapsort) Δοµές Δεδοµένων 01-22

23 Περιεχόµενο Αναζήτηση Πίνακες συµβόλων Δυαδική αναζήτηση, Δέντρα δυαδικής αναζήτησης Τυχαιοποιηµένα δέντρα Στρεβλά δέντρα Δέντρα κόκκινου µαύρου Κατακερµατισµός Β-δέντρα Δοµές Δεδοµένων 01-23

24 Σε τι διαφέρουν οι Δοµές Δεδοµένων από ένα απλό µάθηµα προγραµµατισµού? Πόροι ενός PC: Μνήµη Χρόνος εκτέλεσης Βασικός στόχος του µαθήµατος: Πώς να µάθουµε να χρησιµοποιούµε την κατάλληλη δοµή δεδοµένων για ένα πρόβληµα έτσι ώστε να µειώσουµε αισθητά το χρόνο εκτέλεσης ή να εξοικονοµήσουµε χώρο Ανεξάρτητα από τη γλώσσα προγραµµατισµού που χρησιµοποιούµε Ο προγραµµατισµός για τις Δοµές είναι απλά ένα εργαλείο Δοµές Δεδοµένων 01-24

25 Σχετικά µε τον προγραµµατισµό... Αν το να γράψετε ένα πρόγραµµα σας φαίνεται αποκρουστικό/µισητό/αδιανόητο/...: Δώστε άλλη µια ευκαιρία (πολλοί φοιτητές ανεβάζουν απόδοση στο 3 ο έτος) Αν επιµένει, τότε ίσως είστε σε λάθος τµήµα... Πτυχίο στην Επιστήµη Υπολογιστών χωρίς κάποιες γνώσεις προγραµµατισµού είναι οξύµωρο! Τελικά θα πρέπει να σκεφτείτε τι σας αρέσει περισσότερο να σπουδάσετε Δοµές Δεδοµένων 01-25

26 Κάποιες προτάσεις... Αν δυσκολεύεστε/φοβάστε µε τον προγραµµατισµό: Αφιερώστε περισσότερο χρόνο Προσπαθήστε να λύσετε ασκήσεις µόνοι σας Δείτε το σαν παιχνίδι! Κάθε πρόγραµµα ουσιαστικά λύνει και κάποιο puzzle Δοµές Δεδοµένων 01-26

27 Έστω ένα n x n grid Α Ένα απλό παράδειγµα Πόσα shortest paths υπάρχουν από το Α στο Β? Β Δοµές Δεδοµένων 01-27

28 Ένα απλό παράδειγµα Παρόµοιες ερωτήσεις βρίσκουν εφαρµογές σε VLSI design καθώς και σε διάφορα άλλα είδη δικτύων Πόσο εύκολα µπορούµε να βρούµε την απάντηση? Δοµές Δεδοµένων 01-28

29 Ένα απλό παράδειγµα Θα λύσουµε ένα πιο γενικό πρόβληµα Έστω P[i, j] = αριθµός των κοντινότερων µονοπατιών που υπάρχουν από το Α προς το σηµείο µε συντεταγµένες (i, j) Δηλαδή µέχρι την i-οστή γραµµή και j-οστή στήλη Σύµβαση: το Α είναι στη γραµµή 0 και στήλη 0 Θα βρούµε όλα τα P[i, j] για 0 i, j n-1 Δοµές Δεδοµένων 01-29

30 Ένα απλό παράδειγµα Βασική ιδέα: Τα κοντινότερα µονοπάτια προς το (i, j) θα περάσουν αναγκαστικά είτε από το (i-1, j) είτε από το (i, j-1) (i-1, j) (i, j-1) (i, j) Εποµένως: P[i, j] = P[i-1, j] + P[i, j-1] Δοµές Δεδοµένων 01-30

31 Ένα απλό παράδειγµα Επίσης: Στα σηµεία της γραµµής 0 ή της στήλης 0 υπάρχει µόνο ένα κοντινότερο µονοπάτι από το Α προς αυτά. Με βάση αυτά: for (int i=0; i < n; i++) P[i,0] = 1; for (int j=0; j < n; j++) P[0,j] = 1; for (int i=1; i < n; i++) for (int j=1; j < n; j++) P[i,j] = P[i-1,j] + P[i,j-1]; 7 γραµµές κώδικα Μπορούµε και πιο απλά? Δοµές Δεδοµένων 01-31

32 Επόµενο µάθηµα Προβλήµατα συνδετικότητας: Συνδέονται 2 κόµβοι ενός µεγάλου δικτύου? (δηλαδή υπάρχει µονοπάτι από τον ένα στον άλλο?) Χρήστες σε ένα κοινωνικό δίκτυο (facebook) Τρανζίστορ σε ένα µικροτσίπ Θα δούµε την επίλυση τέτοιων προβληµάτων µε αλγορίθµους ένωσης-εύρεσης (union-find) Δοµές Δεδοµένων 01-32

33 Επόµενο µάθηµα u v Συνδέεται το u µε το v? Δοµές Δεδοµένων 01-33

34 Άλλα παραδείγµατα χρήσης δοµών: Αναζήτηση Δοµές Δεδοµένων χρησιµοποιείτε καθηµερινά στη ζωή σας Π.χ. έστω ότι ψάχνετε το τηλέφωνο του Robert J. Smith. Αν είχατε απλώς µία (αταξινόµητη) λίστα µε όλα τα ονόµατα, για πληθυσµό Ν = , θέλετε Ν συγκρίσεις στη χειρότερη περίπτωση Σε έναν ταξινοµηµένο (τυπωµένο) τηλεφωνικό κατάλογο όλοι σας κάνετε περίπου logn συγκρίσεις Δοµές Δεδοµένων 01-34

35 Άλλα παραδείγµατα χρήσης δοµών: Αναζήτηση Μηχανές αναζήτησης Ίσως η πιο σηµαντική εφαρµογή των Δοµών στις µέρες µας Υπάρχουν πάνω από σελίδες στο web Δεν υπάρχει κάποιος φυσικός τρόπος να ταξινοµήσουµε τις σελίδες Παρ όλα αυτά, η Google απαντά σε όλες τις ερωτήσεις σε χρόνο < 1 sec Χρήση έξυπνων αλγορίθµων για την εύρεση των πιο σχετικών και σηµαντικών σελίδων (τύπου PageRank) + χρήση κατάλληλων δοµών για την αποθήκευση και ανάκτηση των σελίδων Δοµές Δεδοµένων 01-35

36 The puzzle of the week Κατά τη ρήση πολλών: Computer Science is nothing more than solving nice puzzles Κάθε εβδοµάδα θα έχουµε και 1 puzzle Όλα τα puzzles που θα δούµε χρειάζονται κάποια αλγοριθµική σκέψη Δοµές Δεδοµένων 01-36

37 The puzzle of Week 1 You have 2 identical straight pieces of rope. Each takes 1 hour to burn if you light it from 1 side (it doesn t matter which one). Show how we can count 15 minutes. You cannot use rulers, you cannot fold the ropes, and you cannot estimate accurately where the middle point of each rope is. You can ONLY use lighters. Δοµές Δεδοµένων 01-37

Δομές Δεδομένων (Data Structures)

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) 3 ο Εξάμηνο Σπουδών Εαρινό Εξάμηνο 2010/11 Διδάσκων: Χαρμανδάρης Ευάγγελος, Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης email: vagelis@tem.uoc.gr, Ιστοσελίδα Μαθήματος:

Διαβάστε περισσότερα

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης

Οικονοµικό Πανεπιστήµιο Αθηνών. Τµήµα Πληροφορικής. Φθινοπωρινό Εξάµηνο 2015. Δοµές Δεδοµένων - Εργασία 2. Διδάσκων: E. Μαρκάκης Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Φθινοπωρινό Εξάµηνο 2015 Δοµές Δεδοµένων - Εργασία 2 Διδάσκων: E. Μαρκάκης Ταξινόµηση και Ουρές Προτεραιότητας Σκοπός της 2 ης εργασίας είναι η εξοικείωση

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός ΙΙΙ - Java

Δομημένος Προγραμματισμός ΙΙΙ - Java Δομημένος Προγραμματισμός ΙΙΙ - Παύλος Εφραιμίδης 1 Το μάθημα Αντικείμενο-Περιεχόμενα μαθήματος Τρόπος Διδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Περιεχόμενα Μαθήματος Εισαγωγή στους Αλγόριθμους

Διαβάστε περισσότερα

Δομές Δεδομένων. Παύλος Εφραιμίδης

Δομές Δεδομένων. Παύλος Εφραιμίδης Παύλος Εφραιμίδης 1 Το μάθημα Αντικείμενο-Περιεχόμενα μαθήματος Τρόπος Διδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Περιεχόμενα Μαθήματος Εισαγωγή στις και τους Αλγορίθμους Μελέτη και υλοποίηση

Διαβάστε περισσότερα

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. Δοµές Δεδοµένων ΟΝΟΜΑΤΕΠΩΝΥΜΟ: ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ AM: Δοµές Δεδοµένων Πτυχιακή Εξεταστική Ιούλιος 2014 Διδάσκων : Ευάγγελος Μαρκάκης 09.07.2014 ΥΠΟΓΡΑΦΗ ΕΠΟΠΤΗ: Διάρκεια εξέτασης : 2 ώρες

Διαβάστε περισσότερα

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων

Δομές Δεδομένων. Ενότητα 1 - Εισαγωγή. Χρήστος Γκουμόπουλος. Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Δομές Δεδομένων Ενότητα 1 - Εισαγωγή Χρήστος Γκουμόπουλος Πανεπιστήμιο Αιγαίου Τμήμα Μηχανικών Πληροφοριακών και Επικοινωνιακών Συστημάτων Αντικείμενο μαθήματος Δομές Δεδομένων (ΔΔ): Στην επιστήμη υπολογιστών

Διαβάστε περισσότερα

Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2

Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Παύλος Εφραιµίδης 1 Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Περιεχόµενα Μαθήµατος Εισαγωγή στις και τους Αλγορίθµους Μελέτη και υλοποίηση

Διαβάστε περισσότερα

οµηµένος Προγραµµατισµός ΙΙΙ - Java Παύλος Εφραιµίδης οµηµένος Προγρ. ΙΙΙ - 1 Java Το Μάθηµα

οµηµένος Προγραµµατισµός ΙΙΙ - Java Παύλος Εφραιµίδης οµηµένος Προγρ. ΙΙΙ - 1 Java Το Μάθηµα οµηµένος Προγραµµατισµός ΙΙΙ - Παύλος Εφραιµίδης 1 Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Περιεχόµενα Μαθήµατος Εισαγωγή στους Αλγόριθµους

Διαβάστε περισσότερα

οµηµένος Προγραµµατισµός ΙΙΙ - Java

οµηµένος Προγραµµατισµός ΙΙΙ - Java οµηµένος Προγραµµατισµός ΙΙΙ - Παύλος Εφραιµίδης 1 Το µάθηµα Αντικείµενο-Περιεχόµενα µαθήµατος Τρόπος ιδασκαλίας Εργαστήριο Βιβλίο, Βιβλιογραφία On-line Υλικό 2 Περιεχόµενα Μαθήµατος Εισαγωγή στους Αλγόριθµους

Διαβάστε περισσότερα

Δομές Δεδομένων (Data Structures)

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Γραμμικές Λίστες Βασικές Έννοιες Βασικές Έννοιες. Αναπαράσταση με τύπο και με δείκτη. Γραμμικές Λίστες. Βασικές Λειτουργίες. Δομές Δεδομένων: Βασικές Έννοιες Αντικείμενο

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Ιορδάνης Κουτσόπουλος Επίκουρος Καθηγητής Οι διαφάνειες βασίζονται σε μεγάλο βαθμό σε αυτές που συνοδεύονται με το προτεινόμενο σύγγραμμα, καθώς και στις διαφάνειες

Διαβάστε περισσότερα

Βασικές Έννοιες Δοµών Δεδοµένων

Βασικές Έννοιες Δοµών Δεδοµένων Δοµές Δεδοµένων Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλήµατος του ευσταθούς ταιριάσµατος Βασικές Έννοιες

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Ιορδάνης Κουτσόπουλος Αναπληρωτής Καθηγητής Οι διαφάνειες βασίζονται σε μεγάλο βαθμό σε αυτές που συνοδεύονται με το προτεινόμενο σύγγραμμα, καθώς και στις διαφάνειες

Διαβάστε περισσότερα

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός

ΗΥ 252: Αντικειµενοστρεφής Προγραµµατισµός ΗΥ : Αντικειµενοστρεφής Προγραµµατισµός http://www.csd.uoc.gr/~hy Β. Χριστοφίδης christop@ics.forth.gr Τµήµα Επιστήµης Υπολογιστών, Πανεπιστήµιο Κρήτης Ηράκλειο Κρήτης Γενικές Πληροφορίες Ώρες ιδασκαλίας

Διαβάστε περισσότερα

Το µάθηµα Ηλεκτρονική ηµοσίευση

Το µάθηµα Ηλεκτρονική ηµοσίευση Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας Ιόνιο Πανεπιστήµιο Το µάθηµα Ηλεκτρονική ηµοσίευση Σαράντος Καπιδάκης Επικοινωνία Σαράντος Καπιδάκης Εργαστήριο Ψηφιακών Βιβλιοθηκών και Ηλεκτρονικής ηµοσίευσης sarantos@ionio.gr

Διαβάστε περισσότερα

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1. Ε. Μαρκάκης Επικ. Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1. Ε. Μαρκάκης Επικ. Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Κεφάλαιο 1 Ε. Μαρκάκης Επικ. Καθηγητής Περίληψη Συνδετικότητα δικτύου Αφαιρέσεις (abstractions) Αφηρηµένη ένωση-εύρεση 1. Γρήγορη εύρεση 2. Γρήγορη

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Εισαγωγή Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Βιβλιογραφία Jon Kleinberg και Éva Tardos, Σχεδιασμός αλγορίθμων, Εκδόσεις Κλειδάριθμος,

Διαβάστε περισσότερα

Προγραµµατισµός 1 Ταξινόµηση - Αναζήτηση

Προγραµµατισµός 1 Ταξινόµηση - Αναζήτηση Προγραµµατισµός 1 Ταξινόµηση - Αναζήτηση 1 Ταξινόµηση! Δεδοµένα: Δίνεται ένας πίνακας data από N ακεραίους! Ζητούµενο: Να ταξινοµηθούν τα περιεχόµενα σε αύξουσα αριθµητική σειρά:!i : 0 data[i]

Διαβάστε περισσότερα

Κεφάλαιο 2. Η δοµή δεδοµένων Σωρός και η Ταξινόµηση Σωρού (The Heap data structure and Heapsort) Έκδοση 1.1, 12/05/2010

Κεφάλαιο 2. Η δοµή δεδοµένων Σωρός και η Ταξινόµηση Σωρού (The Heap data structure and Heapsort) Έκδοση 1.1, 12/05/2010 Κεφάλαιο 2 Η δοµή δεδοµένων Σωρός και η Ταξινόµηση Σωρού (The Heap data structure and Heapsort) Έκδοση., 2/05/200 Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne. Σωρός και Ταξινόµηση

Διαβάστε περισσότερα

Προγραμματισμός Χειμερινό Εξάμηνο 2014

Προγραμματισμός Χειμερινό Εξάμηνο 2014 Χειμερινό Εξάμηνο 2014 Εισαγωγή Περιεχόμενο : μέθοδοι προγραμματισμού προγραμματιστικές αρχές δομημένος προγραμματισμός, αφαιρετικότητα, υλοποίηση, έλεγχος, και αποσφαλμάτωση καλές πρακτικές γλώσσα προγραμματισμού:

Διαβάστε περισσότερα

Τεχνολογίες Υλοποίησης Αλγορίθµων

Τεχνολογίες Υλοποίησης Αλγορίθµων Τεχνολογίες Υλοποίησης Αλγορίθµων Σχολιασµένη Βιβλιογραϕία Χρηστος. Ζαρολιαγκης Καθηγητής Τµήµα Μηχ/κων Υπολογιστών & Πληροϕορικής Πανεπιστήµιο Πατρών email: zaro@ceid.upatras.gr Φεβρουάριος 2013 1 Περίληψη

Διαβάστε περισσότερα

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων Βάσεις εδοµένων 2003-2004 Ευαγγελία Πιτουρά 1 ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήµατος Επεξεργασία Ερωτήσεων Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασµός) Προγραµµατισµός (Σχεσιακή Άλγεβρα, SQL)

Διαβάστε περισσότερα

ΠΡΟΧΩΡΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Χαρίδημος Κονδυλάκης Εισαγωγή

ΠΡΟΧΩΡΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Χαρίδημος Κονδυλάκης Εισαγωγή ΠΡΟΧΩΡΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Χαρίδημος Κονδυλάκης Εισαγωγή ΟΡΓΑΝΩΣΗ ΜΑΘΗΜΑΤΟΣ Πληροφορίες Διδάσκοντα Διδάσκοντας: Χαρίδημος Κονδυλάκης Email: Kondylak@ics.forth.gr Εβδομαδιαίες Ώρες Διδασκαλίας: 2 ώρες

Διαβάστε περισσότερα

Χειµερινό Εξάµηνο 2013

Χειµερινό Εξάµηνο 2013 Προγραµµατισµός Χειµερινό Εξάµηνο 2013 Προγραµµατισµός Εισαγωγή Περιεχόµενο : γλώσσα προγραµµατισµού: C++ µέθοδοι προγραµµατισµού προγραµµατιστικές αρχές δοµηµένος προγραµµατισµός, αφαιρετικότητα, υλοποίηση,

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα ημήτρης Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Οργανωτικά ιδάσκοντες:. Φωτάκης (και Σ. Ζάχος στο μτπχ.) Βοηθοί διδασκαλίας

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 1 Εισαγωγή 1 / 14 Δομές Δεδομένων και Αλγόριθμοι Δομή Δεδομένων Δομή δεδομένων είναι ένα σύνολο αποθηκευμένων

Διαβάστε περισσότερα

Οι πράξεις που χρειάζονται για την επίλυση αυτών των προβληµάτων (αφού είναι απλές) µπορούν να τεθούν σε µια σειρά και πάρουν µια αλγοριθµική µορφή.

Οι πράξεις που χρειάζονται για την επίλυση αυτών των προβληµάτων (αφού είναι απλές) µπορούν να τεθούν σε µια σειρά και πάρουν µια αλγοριθµική µορφή. Η Αριθµητική Ανάλυση χρησιµοποιεί απλές αριθµητικές πράξεις για την επίλυση σύνθετων µαθηµατικών προβληµάτων. Τις περισσότερες φορές τα προβλήµατα αυτά είναι ή πολύ περίπλοκα ή δεν έχουν ακριβή αναλυτική

Διαβάστε περισσότερα

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ουρές προτεραιότητας Κεφάλαιο 9. Ε. Μαρκάκης Επίκουρος Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ουρές προτεραιότητας Κεφάλαιο 9. Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ουρές προτεραιότητας Κεφάλαιο 9 Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Ουρές προτεραιότητας Στοιχειώδεις υλοποιήσεις Δοµή δεδοµένων σωρού Αλγόριθµοι σε σωρούς Ο αλγόριθµος heapsort Δοµές

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο

Διαβάστε περισσότερα

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Quicksort Κεφάλαιο 7. Ε. Μαρκάκης Επίκουρος Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Quicksort Κεφάλαιο 7. Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ταξινόµηση Quicksort Κεφάλαιο 7 Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Quicksort Ο βασικός αλγόριθµος Χαρακτηριστικά επιδόσεων Μικροί υποπίνακες Μη αναδροµική υλοποίηση Δοµές Δεδοµένων

Διαβάστε περισσότερα

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων Βάσεις Δεδομένων 2013-2014 Ευαγγελία Πιτουρά 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα Βάσεις

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ

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

Διαβάστε περισσότερα

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ)

Διαβάστε περισσότερα

Το µάθηµα Ψηφιακές Βιβλιοθήκες

Το µάθηµα Ψηφιακές Βιβλιοθήκες Τµήµα Αρχειονοµίας Βιβλιοθηκονοµίας Ιόνιο Πανεπιστήµιο Το µάθηµα Ψηφιακές Βιβλιοθήκες Σαράντος Καπιδάκης Επικοινωνία Σαράντος Καπιδάκης Εργαστήριο Ψηφιακών Βιβλιοθηκών και Ηλεκτρονικής ηµοσίευσης sarantos@ionio.gr

Διαβάστε περισσότερα

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

Διαβάστε περισσότερα

Κεφάλαιο 8.6. Πίνακες ΙI ( ιάλεξη 16) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 8.6. Πίνακες ΙI ( ιάλεξη 16) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 8.6 Πίνακες ΙI ( ιάλεξη 16) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 16-1 Πίνακες - Επανάληψη Στην προηγούµενη διάλεξη κάναµε µια εισαγωγή στην δοµή δεδοµένων Πίνακας Σε ένα πίνακα ένα σύνολο αντικειµένων

Διαβάστε περισσότερα

Αλγόριθμοι. Μάρθα Σιδέρη. epl333 lect

Αλγόριθμοι. Μάρθα Σιδέρη. epl333 lect Αλγόριθμοι Μάρθα Σιδέρη epl333 lect1 2011 1 1 Τι είναι αλγόριθμος?? ιαδικασία για να λύνουμε υπολογιστικά προβλήματα. Βήμα βήμα σαφής διαδικασία επίλυσης προβλήματος (μετασχηματισμού της εισόδου στην επιθυμητή

Διαβάστε περισσότερα

ΗΥ 232. Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 1. Εισαγωγή στο μάθημα. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων

ΗΥ 232. Οργάνωση και Σχεδίαση Υπολογιστών. Διάλεξη 1. Εισαγωγή στο μάθημα. Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων ΗΥ 232 Διάλεξη 1 Εισαγωγή στο μάθημα Νίκος Μπέλλας Τμήμα Μηχανικών Η/Υ, Τηλεπικοινωνιών και Δικτύων Διδάσκων: Οργανωτικά Θέματα Νίκος Μπέλλας, Κτήριο Γκλαβάνη, Γραφείο Β3.7, 2 ος όροφος Προσωπική ιστοσελίδα:

Διαβάστε περισσότερα

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ταξινόμηση. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ταξινόμηση. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Ταξινόμηση Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Το πρόβλημα Είσοδος n αντικείμενα a 1, a 2,..., a n με κλειδιά (συνήθως σε ένα πίνακα, ή λίστα, κ.τ.λ)

Διαβάστε περισσότερα

Δομές Δεδομένων (Data Structures)

Δομές Δεδομένων (Data Structures) Δομές Δεδομένων (Data Structures) Ανάλυση - Απόδοση Αλγορίθμων Έλεγχος Αλγορίθμων. Απόδοση Προγραμμάτων. Χωρική/Χρονική Πολυπλοκότητα. Ασυμπτωτικός Συμβολισμός. Παραδείγματα. Αλγόριθμοι: Βασικές Έννοιες

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΑ 3 και 9 ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΕΣ Δεδομένα αφαιρετική αναπαράσταση της πραγματικότητας και συνεπώς μία απλοποιημένη όψη της δηλαδή.

Διαβάστε περισσότερα

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ουρές Προτεραιότητας. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

Δομές Δεδομένων. Δημήτρης Μιχαήλ. Ουρές Προτεραιότητας. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Δομές Δεδομένων Ουρές Προτεραιότητας Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ουρά Προτεραιότητας Το πρόβλημα Έχουμε αντικείμενα με κλειδιά και θέλουμε ανά πάσα στιγμή

Διαβάστε περισσότερα

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 7 η. Βασίλης Στεφανής

Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ. Διάλεξη 7 η. Βασίλης Στεφανής Εισ. Στην ΠΛΗΡΟΦΟΡΙΚΗ Διάλεξη 7 η Βασίλης Στεφανής Αλγόριθμοι ταξινόμησης Στην προηγούμενη διάλεξη είδαμε: Binary search Λειτουργεί μόνο σε ταξινομημένους πίνακες Πώς τους ταξινομούμε? Πολλοί τρόποι. Ενδεικτικά:

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ. ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΠΛ 035: οµές εδοµένων και Αλγόριθµοι για Ηλεκτρολόγους Μηχανικούς και Μηχανικούς Υπολογιστών Ακαδηµαϊκό έτος 2010 2011, Χειµερινό εξάµηνο Παρασκευή - 17/12/10 (08:30-11:30)

Διαβάστε περισσότερα

Ψηφιακή Σχεδίαση ΙΙ Εισαγωγικό Μάθημα. Δρ. Μηνάς Δασυγένης

Ψηφιακή Σχεδίαση ΙΙ Εισαγωγικό Μάθημα. Δρ. Μηνάς Δασυγένης Ψηφιακή Σχεδίαση ΙΙ Εισαγωγικό Μάθημα Δρ. Μηνάς Δασυγένης mdasyg@ieee.org 1 Εκπαιδευτικό Συμβόλαιο Αποτελεί μια συμφωνία ανάμεσα σε εμένα και σε εσάς για: Εκπαιδευτική διαδικασία (ατομική και ομαδική εργασία)

Διαβάστε περισσότερα

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014

ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό. Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014 ΜΥΥ105: Εισαγωγή στον Προγραµµατισµό Αναζήτηση και Ταξινόµηση Χειµερινό Εξάµηνο 2014 Αναζήτηση και Ταξινόµηση Βασικές λειτουργίες σε προγράµµατα Αναζήτηση (searching): Βρες ένα ζητούµενο στοιχείο σε µια

Διαβάστε περισσότερα

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές

Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές Εισαγωγή στους Ηλεκτρονικούς Υπολογιστές 1 ο Εξάμηνο Σπουδών Χειμερινό Εξάμηνο 2012/13 Τμήμα Εφαρμοσμένων Μαθηματικών, Πανεπιστήμιο Κρήτης Διδάσκων: Χαρμανδάρης Ευάγγελος, email: vagelis@tem.uoc.gr, Ιστοσελίδα

Διαβάστε περισσότερα

Μια Επισκόπηση της Ύλης & Μερικές Οδηγίες

Μια Επισκόπηση της Ύλης & Μερικές Οδηγίες Μια Επισκόπηση της Ύλης & Μερικές Οδηγίες Βαγγέλης ούρος douros@aueb.gr 1 11/6/2012 Αλγόριθμοι, Εαρινό Εξάμηνο 2012, Φροντιστήριο #14 Γενικά Σχόλια (1) 2 Για το τελικό διαγώνισμα θα χρειαστείτε: Φοιτητική

Διαβάστε περισσότερα

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Πίνακες Συµβόλων Κεφάλαιο 12 ( ) Ε. Μαρκάκης Επίκουρος Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Πίνακες Συµβόλων Κεφάλαιο 12 ( ) Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Πίνακες Συµβόλων Κεφάλαιο 12 (12.1-12.4) Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Πίνακες συµβόλων Διεπαφή πίνακα συµβόλων Αναζήτηση µε αριθµοδείκτη Ακολουθιακή αναζήτηση Δυαδική αναζήτηση

Διαβάστε περισσότερα

ΕΠΛ 032 Προγραµµατισµός Μεθόδων Επίλυσης Προβληµάτων

ΕΠΛ 032 Προγραµµατισµός Μεθόδων Επίλυσης Προβληµάτων ΕΠΛ 032 Προγραµµατισµός Μεθόδων Επίλυσης Προβληµάτων Διάλεξη 1 Παύλος Αντωνίου Εισαγωγή στην Πληροφορική και Προγραµµατισµό Συµβόλαιο Μαθήµατος. Ιστορική Αναδροµή. Υλικό Υπολογιστή (Computer Hardware).

Διαβάστε περισσότερα

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής

ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ. Ταξινόµηση Mergesort Κεφάλαιο 8. Ε. Μαρκάκης Επίκουρος Καθηγητής ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Ταξινόµηση Mergesort Κεφάλαιο 8 Ε. Μαρκάκης Επίκουρος Καθηγητής Περίληψη Ταξινόµηση µε συγχώνευση Αλγόριθµος Mergesort Διµερής συγχώνευση Αφηρηµένη επιτόπου συγχώνευση Αναλυτική ταξινόµηση

Διαβάστε περισσότερα

Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14. ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η

Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14. ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η Τμήμα Πληροφορικής & Τηλεπικοινωνιών Μεταπτυχιακό Πρόγραμμα Σπουδών Ακαδημαϊκό Έτος 2013-14 ΠΜΣ ΚΑΤΕΥΘΥΝΣΗ 6 η Νέες Τεχνολογίες Πληροφορικής και Τηλεπικοινωνιών Εργασία στο Μαθήμα Σχεδίαση Εκπαιδευτικού

Διαβάστε περισσότερα

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο

Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο Κατακερµατισµός 1 Οργάνωση Αρχείων (σύνοψη) Οργάνωση αρχείων: πως είναι τοποθετηµένες οι εγγραφές ενός αρχείου όταν αποθηκεύονται στο δίσκο 1. Αρχεία Σωρού 2. Ταξινοµηµένα Αρχεία Φυσική διάταξη των εγγραφών

Διαβάστε περισσότερα

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΛΥΣΗ ΣΤΗΝ ΕΥΤΕΡΗ ΑΣΚΗΣΗ ΜΑΘΗΜΑ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ ΑΚΑ. ΕΤΟΣ 2012-13 Ι ΑΣΚΟΝΤΕΣ Ιωάννης Βασιλείου Καθηγητής, Τοµέας Τεχνολογίας

Διαβάστε περισσότερα

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές

Τι είναι αλγόριθμος; Υποπρογράμματα (υποαλγόριθμοι) Βασικές αλγοριθμικές δομές Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Εισαγωγή στην Επιστήμη των Υπολογιστών 2015-16 Αλγόριθμοι και Δομές Δεδομένων (Ι) (εισαγωγικές έννοιες) http://di.ionio.gr/~mistral/tp/csintro/ Μ.Στεφανιδάκης Τι είναι

Διαβάστε περισσότερα

Δομές Δεδομένων. Ενότητα 2: Περισσότερα για τους δείκτες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ

Δομές Δεδομένων. Ενότητα 2: Περισσότερα για τους δείκτες. Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Δομές Δεδομένων Ενότητα 2: Περισσότερα για τους δείκτες Δρ. Γεώργιος Σίσιας Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή Επεξεργασία Ερωτήσεων ΜΕΡΟΣ 1 Γενική Εικόνα του Μαθήματος 1. Μοντελοποίηση (Μοντέλο Ο/Σ, Σχεσιακό, Λογικός Σχεδιασμός) 2. Προγραμματισμός (Σχεσιακή Άλγεβρα, SQL) ημιουργία/κατασκευή Εισαγωγή εδομένων

Διαβάστε περισσότερα

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή

Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή Ερωτήσεις πολλαπλής επιλογής - Κεφάλαιο 3 1. Κάθε δομή μπορεί να χρησιμοποιηθεί σε οποιοδήποτε πρόβλημα ή εφαρμογή 2. Δυναμικές είναι οι δομές που αποθηκεύονται σε συνεχόμενες θέσεις μνήμης 3. Ένας πίνακας

Διαβάστε περισσότερα

Διάλεξη 1η: Εισαγωγή

Διάλεξη 1η: Εισαγωγή Διάλεξη 1η: Εισαγωγή Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Εισαγωγή CS100, 2015-2016 1 / 18 Εισαγωγή Διδάσκων: Πολύβιος Πρατικάκης: polyvios@csduocgr

Διαβάστε περισσότερα

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος Εισαγωγή στους Αλγόριθµους Αλγόριθµοι Τι είναι αλγόριθµος; Τι µπορεί να υπολογίσει ένας αλγόριθµος; Πως αξιολογείται ένας αλγόριθµος; Παύλος Εφραιµίδης pefraimi@ee.duth.gr Αλγόριθµοι Εισαγωγικές Έννοιες

Διαβάστε περισσότερα

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5 Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών

Διαβάστε περισσότερα

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Ευρετήρια Ευαγγελία Πιτουρά 1 τιμή γνωρίσματος Ευρετήρια Ένα ευρετήριο (index) είναι μια βοηθητική δομή αρχείου που κάνει πιο αποδοτική την αναζήτηση μιας εγγραφής σε ένα αρχείο Το ευρετήριο καθορίζεται

Διαβάστε περισσότερα

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού

Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού Τo πρόγραμμα «Διάγραμμα Ροής» και η διδακτική του αξιοποίηση στην Διδασκαλία του προγραμματισμού Α. Βρακόπουλος 1, Θ.Καρτσιώτης 2 1 Καθηγητής Πληροφορικής Δευτεροβάθμιας Εκπαίδευσης Vraa8@sch.gr 2 Σχολικός

Διαβάστε περισσότερα

Πληροφορική 2. Αλγόριθμοι

Πληροφορική 2. Αλγόριθμοι Πληροφορική 2 Αλγόριθμοι 1 2 Τι είναι αλγόριθμος; Αλγόριθμος είναι ένα διατεταγμένο σύνολο από σαφή βήματα το οποίο παράγει κάποιο αποτέλεσμα και τερματίζεται σε πεπερασμένο χρόνο. Ο αλγόριθμος δέχεται

Διαβάστε περισσότερα

Αλγόριθμοι και Πολυπλοκότητα

Αλγόριθμοι και Πολυπλοκότητα Αλγόριθμοι και Πολυπλοκότητα Ανάλυση Αλγορίθμων Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ανάλυση Αλγορίθμων Η ανάλυση αλγορίθμων περιλαμβάνει τη διερεύνηση του τρόπου

Διαβάστε περισσότερα

Σχεδίαση Εκπαιδευτικού Λογισμικού. Εργασία 2 - Α' φάση. Σενάριο/Σχέδιο μαθήματος. Σταματία Κορρέ Μ1430

Σχεδίαση Εκπαιδευτικού Λογισμικού. Εργασία 2 - Α' φάση. Σενάριο/Σχέδιο μαθήματος. Σταματία Κορρέ Μ1430 Σχεδίαση Εκπαιδευτικού Λογισμικού Εργασία 2 - Α' φάση Σενάριο/Σχέδιο μαθήματος Σταματία Κορρέ Μ1430 2 Περιεχόμενα Τίτλος... 2 Γνωστικό αντικείμενο... 2 Βαθμίδα εκπαίδευσης... 3 Διδακτικοί στόχοι... 3 Αναμενόμενα

Διαβάστε περισσότερα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα

Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Διάλεξη 2η: Αλγόριθμοι και Προγράμματα Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Αλγόριθμοι και Προγράμματα

Διαβάστε περισσότερα

ΥΠΟΔΟΧΗ ΠΡΩΤΟΕΤΩΝ ΦΟΙΤΗΤΩΝ 2013-1014. Παρουσίαση του Τµήµατος

ΥΠΟΔΟΧΗ ΠΡΩΤΟΕΤΩΝ ΦΟΙΤΗΤΩΝ 2013-1014. Παρουσίαση του Τµήµατος Πανεπιστήμιο ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΛΟΠΟΝΝΗΣΟΥ ΣΧΟΛΗ ΟΙΚΟΝΟΜΙΑΣ,ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΥΠΟΔΟΧΗ ΠΡΩΤΟΕΤΩΝ ΦΟΙΤΗΤΩΝ 2013-1014 Παρουσίαση του Τµήµατος http://dit.uop.gr

Διαβάστε περισσότερα

Περιγραφή του μαθήματος

Περιγραφή του μαθήματος Περιγραφή του μαθήματος Δρ. Χρήστος Ηλιούδης 1ο Μάθημα: περιγραφή μαθήματος Σκοπός Μαθήματος Σκοπός του μαθήματος είναι οι φοιτητές να γνωρίσουν τις θεμελιώδεις αρχές της Επιστήμης των υπολογιστών ως μια

Διαβάστε περισσότερα

σας φύλλο τον αριθμό της ερώτησης ακολουθούμενη από το γράμμα Σ (Σωστή) ή το γράμμα Λ (Λάθος).

σας φύλλο τον αριθμό της ερώτησης ακολουθούμενη από το γράμμα Σ (Σωστή) ή το γράμμα Λ (Λάθος). Μάθημα: Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τάξη Γ ΛΥΚΕΙΟΥ, Πληροφορικής οικονομικών Καθηγητής : Σιαφάκας Γιώργος Ημερομηνία : 8/5/2016 Διάρκεια: 3 ώρες ΘΕΜΑ Α /40 (Α1) (α)να απαντήσετε αν

Διαβάστε περισσότερα

Προγραμματισμός Διαδικτύου

Προγραμματισμός Διαδικτύου 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Προγραμματισμός Διαδικτύου Ενότητα 9 : Δυναμικοί τύπου δεδομένων Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

ΠΕΡΙΕΧΟΜΕΝΑ. Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων

ΠΕΡΙΕΧΟΜΕΝΑ. Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων ΠΕΡΙΕΧΟΜΕΝΑ Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων Εισαγωγή Η χρήση των μεταβλητών με δείκτες στην άλγεβρα είναι ένας ιδιαίτερα

Διαβάστε περισσότερα

Δοµές Δεδοµένων. 9η Διάλεξη Ταξινόµηση - Στοιχειώδεις µέθοδοι. Ε. Μαρκάκης

Δοµές Δεδοµένων. 9η Διάλεξη Ταξινόµηση - Στοιχειώδεις µέθοδοι. Ε. Μαρκάκης Δοµές Δεδοµένων 9η Διάλεξη Ταξινόµηση - Στοιχειώδεις µέθοδοι Ε. Μαρκάκης Περίληψη Bubble Sort Selection Sort Insertion Sort Χαρακτηριστικά επιδόσεων Shellsort Ταξινόµηση συνδεδεµένων λιστών Δοµές Δεδοµένων

Διαβάστε περισσότερα

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/

Τεχνητή Νοημοσύνη. 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος. http://www.aueb.gr/users/ion/ Τεχνητή Νοημοσύνη 2η διάλεξη (2015-16) Ίων Ανδρουτσόπουλος http://www.aueb.gr/users/ion/ 1 Οι διαφάνειες αυτής της διάλεξης βασίζονται στα βιβλία: Τεχνητή Νοημοσύνη των Βλαχάβα κ.ά., 3η έκδοση, Β. Γκιούρδας

Διαβάστε περισσότερα

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις

Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις Επαναληπτικό ιαγώνισµα Πληροφορικής Γ Γυµνασίου (νέο βιβλίο Πληροφορικής Γυµνασίου Αράπογλου, Μαβόγλου, Οικονοµάκου, Φύτρου) Γιώργος Λιακέας Σχολικός Σύµβουλος Πληροφορικής Ερωτήσεις 1. Τι είναι ο Αλγόριθµος;

Διαβάστε περισσότερα

Περιεχόμενα. Περιεχόμενα

Περιεχόμενα. Περιεχόμενα Περιεχόμενα xv Περιεχόμενα 1 Αρχές της Java... 1 1.1 Προκαταρκτικά: Κλάσεις, Τύποι και Αντικείμενα... 2 1.1.1 Βασικοί Τύποι... 5 1.1.2 Αντικείμενα... 7 1.1.3 Τύποι Enum... 14 1.2 Μέθοδοι... 15 1.3 Εκφράσεις...

Διαβάστε περισσότερα

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

Δομές Δεδομένων και Αλγόριθμοι Δομές Δεδομένων και Αλγόριθμοι Χρήστος Γκόγκος ΤΕΙ Ηπείρου Χειμερινό Εξάμηνο 2014-2015 Παρουσίαση 22 Counting sort, bucket sort και radix sort 1 / 16 Ιδιότητες αλγορίθμων ταξινόμησης ευστάθεια (stable

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής

Αρχιτεκτονική Υπολογιστών. ηµήτρης Γκιζόπουλος Καθηγητής Αρχιτεκτονική Υπολογιστών ΙI ηµήτρης Γκιζόπουλος Καθηγητής Γενικά ηµήτρης Γκιζόπουλος, Καθηγητής http://www.di.uoa.gr/~dgizop γραφείο Α32 ιδασκαλία στο αµφιθέατρο Α2 ευτέρα 11 00 13 00 Πέµπτη 13 00 15

Διαβάστε περισσότερα

Διάλεξη 01: Δομές Δεδομένων και Αλγόριθμοι - Εισαγωγή

Διάλεξη 01: Δομές Δεδομένων και Αλγόριθμοι - Εισαγωγή 1 Διάλεξη 01: Δομές Δεδομένων και Αλγόριθμοι - Εισαγωγή Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Δεδομένα και Ενδόμνημη Αναπαράσταση τους - Οργάνωση Δεδομένων

Διαβάστε περισσότερα

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης Δοµές Δεδοµένων 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων Ε. Μαρκάκης Περίληψη Χρήση αναδροµικών εξισώσεων στην ανάλυση αλγορίθµων Αφηρηµένοι τύποι δεδοµένων Συλλογές στοιχείων Στοίβα

Διαβάστε περισσότερα

Δοµές Δεδοµένων. 4η Διάλεξη Στοιχειώδεις Δοµές Δεδοµένων: Πίνακες και Λίστες. Ε. Μαρκάκης

Δοµές Δεδοµένων. 4η Διάλεξη Στοιχειώδεις Δοµές Δεδοµένων: Πίνακες και Λίστες. Ε. Μαρκάκης Δοµές Δεδοµένων 4η Διάλεξη Στοιχειώδεις Δοµές Δεδοµένων: Πίνακες και Λίστες Ε. Μαρκάκης Εργαστήρια Ώρες εργαστηρίων Τέσσερα τµήµατα εργαστηρίων XXXX001-XXXX060, Δευτέρα 09:00-11:00 (CSLAB II) XXXX061-XXXX120,

Διαβάστε περισσότερα

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

Αντισταθμιστική ανάλυση Αντισταθμιστική ανάλυση Θεωρήστε έναν αλγόριθμο Α που χρησιμοποιεί μια δομή δεδομένων Δ : Κατά τη διάρκεια εκτέλεσης του Α η Δ πραγματοποιεί μία ακολουθία από πράξεις. Παράδειγμα: Θυμηθείτε το πρόβλημα

Διαβάστε περισσότερα

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

Διάλεξη 17η: Ταξινόμηση και Αναζήτηση Διάλεξη 17η: Ταξινόμηση και Αναζήτηση Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Πρατικάκης (CSD) Ταξινόμηση CS100, 2016-2017 1 / 10 Το πρόβλημα της Αναζήτησης

Διαβάστε περισσότερα

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

Δομές δεδομένων (2) Αλγόριθμοι Δομές δεδομένων (2) Αλγόριθμοι Παράγωγοι τύποι (struct) σύνοψη προηγουμένων Πίνακες: πολλές μεταβλητές ίδιου τύπου Παράγωγοι τύποι ή Δομές (struct): ομαδοποίηση μεταβλητών διαφορετικού τύπου struct Student

Διαβάστε περισσότερα

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος Αλγόριθµοι Τύπου Μείωσης Προβλήµατος Περίληψη Αλγόριθµοι Τύπου Μείωσης Προβλήµατος ( Decrease and Conquer ) Μείωση κατά µια σταθερά (decrease by a constant) Μείωση κατά ένα ποσοστό (decrease by a constant

Διαβάστε περισσότερα

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα Αλγόριθµοι και Πολυπλοκότητα Στην ενότητα αυτή θα µελετηθούν τα εξής θέµατα: Πρόβληµα, Στιγµιότυπο, Αλγόριθµος Εργαλεία εκτίµησης πολυπλοκότητας: οι τάξεις Ο(n), Ω(n), Θ(n) Ανάλυση Πολυπλοκότητας Αλγορίθµων

Διαβάστε περισσότερα

8. Λεξιλόγιο μιας γλώσσας είναι όλες οι ακολουθίες που δημιουργούνται από τα στοιχεία του αλφαβήτου της γλώσσας, τις λέξεις.

8. Λεξιλόγιο μιας γλώσσας είναι όλες οι ακολουθίες που δημιουργούνται από τα στοιχεία του αλφαβήτου της γλώσσας, τις λέξεις. ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΕΦΑΛΑΙΑ 1-6 ΟΝΟΜΑ: ΗΜΕΡΟΜΗΝΙΑ: ΒΑΘΜΟΣ: ΘΕΜΑ 1ο Α. Να γράψετε στο τετράδιό σας τον αριθµό καθεµιάς από τις παρακάτω προτάσεις και δίπλα τη λέξη Σωστό,

Διαβάστε περισσότερα

Ουρά Προτεραιότητας (priority queue)

Ουρά Προτεραιότητας (priority queue) Ουρά Προτεραιότητας (priority queue) Δομή δεδομένων που υποστηρίζει δύο βασικές λειτουργίες : Εισαγωγή στοιχείου με δεδομένο κλειδί. Επιστροφή ενός στοιχείου με μέγιστο (ή ελάχιστο) κλειδί και διαγραφή

Διαβάστε περισσότερα

Week. 6: Java Collections

Week. 6: Java Collections Week 6: Java Collections Συλλογές δεδοµένων [collections] Εβδοµάδα 6: Συλλογές δεδοµένων στην Java Οι συλλογές [collections] (αναφέρονται και ως «υποδοχείς δεδοµένων» [containers]) είναι κλάσεις που χρησιµοποιούνται

Διαβάστε περισσότερα

Δίκτυα Υπολογιστών. Πληροφορίες για το μάθημα. Ευάγγελος Παπαπέτρου. Τμ. Μηχ. Η/Υ & Πληροφορικής, Παν. Ιωαννίνων

Δίκτυα Υπολογιστών. Πληροφορίες για το μάθημα. Ευάγγελος Παπαπέτρου. Τμ. Μηχ. Η/Υ & Πληροφορικής, Παν. Ιωαννίνων Δίκτυα Υπολογιστών Πληροφορίες για το μάθημα Ευάγγελος Παπαπέτρου Τμ Μηχ Η/Υ & Πληροφορικής, Παν Ιωαννίνων ΕΠαπαπέτρου (ΤμΜηχ Η/Υ & Πληροφορικής) ΠΛΥ606: Δίκτυα Υπολογιστών 1 / 17 Διάρθρωση 1 Αντικείμενο

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 11/10/07 Τμήμα θεωρίας: Α.Μ. 8, 9 Κάθε Πέμπτη, 11πμ-2μμ, ΑΜΦ23. Διδάσκων: Ντίνος Φερεντίνος Γραφείο 118 email: kpf3@cornell.edu Μάθημα: Θεωρία + προαιρετικό

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ 2015-2016 Θέμα Α Α1. Να γράψετε στο τετράδιό σας τον αριθμό καθεμιάς από τις προτάσεις 1-4 και δίπλα τη λέξη ΣΩΣΤΟ,

Διαβάστε περισσότερα

Πληροφορική 2. Δομές δεδομένων και αρχείων

Πληροφορική 2. Δομές δεδομένων και αρχείων Πληροφορική 2 Δομές δεδομένων και αρχείων 1 2 Δομή Δεδομένων (data structure) Δομή δεδομένων είναι μια συλλογή δεδομένων που έχουν μεταξύ τους μια συγκεκριμένη σχέση Παραδείγματα δομών δεδομένων Πίνακες

Διαβάστε περισσότερα

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Κατανεμημένα Συστήματα με Java. Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Κατανεμημένα Συστήματα με Java Ενότητα # 4: Αμοιβαίος αποκλεισμός Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού

Διαβάστε περισσότερα

Exercises 10. Find a fundamental matrix of the given system of equations. Also find the fundamental matrix Φ(t) satisfying Φ(0) = I. 1.

Exercises 10. Find a fundamental matrix of the given system of equations. Also find the fundamental matrix Φ(t) satisfying Φ(0) = I. 1. Exercises 0 More exercises are available in Elementary Differential Equations. If you have a problem to solve any of them, feel free to come to office hour. Problem Find a fundamental matrix of the given

Διαβάστε περισσότερα

HY118- ιακριτά Μαθηµατικά

HY118- ιακριτά Μαθηµατικά HY118- ιακριτά Μαθηµατικά Παρασκευή, 01/04/2016 Αντώνης Α. Αργυρός e-mail: argyros@csd.uoc.gr Το υλικό των διαφανειών έχει βασιστεί σε διαφάνειες του Kees van Deemter, από το University of Aberdeen 4/3/2016

Διαβάστε περισσότερα

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ 1 ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΦΡΟΝΤΙΣΤΗΡΙΟ ΑΛΓΟΡΙΘΜΩΝ ΒΟΗΘΟΣ: ΒΑΓΓΕΛΗΣ ΔΟΥΡΟΣ Φροντιστήριο #10: Αλγόριθμοι Διαίρει & Βασίλευε: Master Theorem, Αλγόριθμοι Ταξινόμησης, Πιθανοτικός

Διαβάστε περισσότερα

Δοµές Δεδοµένων. 10η Διάλεξη Ταξινόµηση. E. Μαρκάκης

Δοµές Δεδοµένων. 10η Διάλεξη Ταξινόµηση. E. Μαρκάκης Δοµές Δεδοµένων 10η Διάλεξη Ταξινόµηση E. Μαρκάκης Περίληψη Ταξινόµηση µε αριθµοδείκτη κλειδιού Ταξινόµηση µε συγχώνευση Αλγόριθµος Mergesort Διµερής συγχώνευση Αφηρηµένη επιτόπου συγχώνευση Αναλυτική

Διαβάστε περισσότερα

Προγραμματισμός Διαδικτύου

Προγραμματισμός Διαδικτύου 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προγραμματισμός Διαδικτύου Ενότητα 7 : Αρχεία στην Java Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων Εισαγωγή Σ Β Σύνολο από προγράμματα για τη διαχείριση της Β Επεξεργασία Ερωτήσεων Αρχεία ευρετηρίου Κατάλογος συστήματος Αρχεία δεδομένων ΒΑΣΗ Ε ΟΜΕΝΩΝ Σύστημα Βάσεων εδομένων (ΣΒ ) Βάσεις Δεδομένων 2007-2008

Διαβάστε περισσότερα