Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Stacks - Στοίβες.

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση.
Advertisements

Στρατηγική ανάπτυξης προγράμματος την ώρα του διαγωνισμού
Στατική Συμβολική Παραγώγιση Λάμδα Εκφράσεων στην C++
POINTERS, AGGREGATION, COMPOSITION. POINTERS TO OBJECTS.
-Στοίβα-Ουρά - Πλεονεκτήματα πινάκων -Δομές δεδομένων δευτερεύουσας μνήμης -Πληροφορική και δεδομένα -Παραδείγματα-Προβλήματα ψευδοκώδικα.
ΜΑΘΗΜΑ 7ο Κυκλικές και Διπλά Συνδεδεμένες Λίστες,
Γλώσσα C & Unix Τμήμα Πληροφορικής, ΑΠΘ B’ εξάμηνο
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Αντικείμενα ως ορίσματα.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα.
DATA MINING LECTURE 6 Mixture of Gaussians and the EM algorithm
Αντικειμενοστραφής Προγραμματισμός
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Συναρτήσεις Κληση/Επιστροφη Παραμετροι
Στοίβα & Ουρά Πέμπτη 08/03/2007 Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Τμήμα: Γ3τεχν. Καθηγητής :Ν. Γιαννακόπουλος ΠΕ19 Ερωτήσεις:
Ολυμπιάδα Πληροφορικής
Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Recursion - Αναδρομή.
1 Ολυμπιάδα Πληροφορικής Μάθημα 7. 2 Στόχοι μαθήματος Δημιουργία συναρτήσεων από το χρήστη Δομή προγράμματος με συναρτήσεις Συναρτήσεις και παράμετροι.
Ολυμπιάδα Πληροφορικής
Ολυμπιάδα Πληροφορικής
1 Ολυμπιάδα Πληροφορικής Μάθημα 5. 2 Στόχοι μαθήματος Πίνακες 2 διαστάσεων.
Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Γράφοι – Graphs (Εισαγωγή)
Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Γράφοι – Διάσχιση.
Ε. ΠετράκηςΣτοίβες, Ουρές1 Στοίβες  Στοίβα: περιορισμένη ποικιλία λίστας  τα στοιχεία μπορούν να εισαχθούν ή να διαγραφούν μόνο από μια άκρη : λίστες.
Στοίβα, Ουρά.
Αλγόριθμοι συνέχεια 2.2.4, 2.2.5,
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
Δείκτες (Pointers) – Δομές (Structs)
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αρχεία.
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ
ΕΠΛ 223 Θεωρία και Πρακτική Μεταγλωττιστών7-1 Πίνακας Συμβόλων Πίνακας συμβόλων: δομή δεδομένων που χρησιμοποιείται για την αποθήκευση διαφόρων πληροφοριών.
ΜΑΘΗΜΑ: ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ C++ ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ Πέμπτη, 2 Απριλίου 2015Πέμπτη, 2 Απριλίου 2015Πέμπτη, 2 Απριλίου 2015Πέμπτη, 2 Απριλίου 2015Τμ.
Templates Standard Template Library (STL) Exceptions Μεταπτυχιακό Πρόγραμμα Σπουδών, Τμήμα Εφαρμοσμένης Πληροφορικής.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ
Κεφάλαιο 10 – Υποπρογράμματα
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Πέρασμα παραμέτρων, συναρτήσεις δόμησης και αποδόμησης.
ΛΟΓ102: Τεχνολογία Λογισμικού Ι Διδάσκων: Νίκος Παπασπύρου 1Νίκος ΠαπασπύρουΛΟΓ102:
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές.
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ 150 – Προγραμματισμός Ξενοφών Ζαμπούλης ΗΥ -150 Προγραμματισμός Αρχεία.
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι 4-1 Στην ενότητα αυτή θα μελετηθεί η χρήση στοιβών στις εξής εφαρμογές: Αναδρομικές συναρτήσεις Ισοζυγισμός Παρενθέσεων.
ΗΥ150 – ΠρογραμματισμόςΞ. Ζαμπούλης ΗΥ-150 Προγραμματισμός Αρχεία.
7-1 ΜΑΘΗΜΑ 7 ο Περισσότερα για Κυκλικές και Διπλά Διασυνδεόμενες Λίστες, Συναρτήσεις Βιβλιοθήκης, Διαχείριση Αρχείων.
Δομές Δεδομένων και Αρχεία Ενότητα 7: Η δομή Στοίβα Ηλίας Κ. Σάββας, Αναπληρωτής Καθηγητής, Τμήμα Μηχανικών Πληροφορικής Τ.Ε., T.E.I. Θεσσαλίας.
ΗΥ150 – ΠρογραμματισμόςΞενοφών Ζαμπούλης ΗΥ-150 Προγραμματισμός Αναδρομή (1/2)
ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΕΣ ΤΕΧΝΙΚΕΣ Διδάσκοντες:Γιάννης Μαΐστρος Στάθης Ζάχος Νίκος Παπασπύρου
ΗΥ150 – ΠρογραμματισμόςΚώστας Παναγιωτάκης ΗΥ-150 Προγραμματισμός Συναρτήσεις (μέρος δεύτερο) και Μεταβλητές.
ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ Διδάσκοντες:Στάθης Ζάχος Νίκος Παπασπύρου
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα.
ΠΑΡΑΔΕΙΓΜΑ: ΤΑ ΕΠΙΠΕΔΑ ΥΛΙΚΟΥ – ΛΟΓΙΣΜΙΚΟΥ ΣΕ ΕΝΑΝ ΥΠΟΛΟΓΙΣΤΗ.
Πληροφορική 2 Γλώσσες Προγραμματισμού 1. Γλώσσες προγραμματσιμού  Επιτρέπουν την κωδικοποίηση των αλγορίθμων  Η εκτέλεση ενός προγράμματος θα πρέπει.
Οι Δομές Δεδομένων Ουρά και Στοίβα
ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΙΣΤΗΜΗ ΤΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Ενότητα Εισαγωγή Είναι εύκολη στη χρήση και στην εκμάθηση.
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ: ΔΙΟΙΚΗΣΗ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΜΟΝΑΔΩΝ
ΣΥΝΑΡΤΗΣΕΙΣ (Functions)
Ενότητα 9: Δείκτες και Δυναμική Διαχείριση Μνήμης.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Γαλλία.
Οι Δομές Δεδομένων Ουρά και Στοίβα
Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΑΕΠΠ
ΗΥ-150 Προγραμματισμός Αναδρομή (1/2).
Αναδρομή Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα:
Μανασσάκης Βασίλης Καθηγητής Πληροφορικής
Η Ροή του Κόστους Παραγωγής
Μεταγράφημα παρουσίασης:

Διδάσκων: Παύλος Παυλικκάς1 Ολυμπιάδα Πληροφορικής Stacks - Στοίβες

Διδάσκων: Παύλος Παυλικκάς2 Stacks Οι στοίβες είναι δομές δεδομένων που ακολουθούν την αρχή LIFO – Last In First Out. Μπορείτε να σκεφτείτε μια στοίβα από πιάτα. Το πιάτο στο οποίο έχετε πρόσβαση είναι αυτό που βρίσκεται στην κορυφή. Για να μπορέσετε να πάρετε κάποιο πιάτο που βρίσκεται για παράδειγμα στη μέση θα πρέπει να αφαιρέσετε πρώτα τα πιάτα που βρίσκονται από πάνω του.

Διδάσκων: Παύλος Παυλικκάς3 Είδη στοίβας Στατικές Υλοποιούνται με τη χρήση ενός πίνακα. Είναι πιο εύκολες στη χρήση τους αλλά έχουν το μειονέκτημα ότι πρέπει να είναι γνωστό το πλήθος που θα εισαχθούν στη στοίβα. Δυναμικές Υλοποιούνται με την χρήση pointers και records. Είναι πιο δύσκολο να υλοποιηθούν αλλά το μέγεθος τους μπορεί να αλλάζει κατά τη διάρκεια εκτέλεσης του προγράμματος.

Διδάσκων: Παύλος Παυλικκάς4.. top datanextdatanextdatanext

Διδάσκων: Παύλος Παυλικκάς5 Παράδειγμα εισαγωγής δεδομένων σε στοίβα Έστω ότι θέλουμε να αποθηκεύσουμε τους αριθμούς 10,24,43 σε μια στοίβα. Επίσης έστω οι διευθύνσεις της μνήμης RAM είναι όπως φαίνονται πιο κάτω FFF1FFF2FFF3 FFF4FFF5FFF6 FFF7FFF8FFF9

Διδάσκων: Παύλος Παυλικκάς6 Παράδειγμα εισαγωγής δεδομένων σε στοίβα Εισαγωγή 10 Εισαγωγή 24 Εισαγωγή 43 TopDataNext Στοίβα 10null FFF1 FFF FFF2 FFF3 FFF1

Διδάσκων: Παύλος Παυλικκάς7 Εργασία με στοίβες Push Με τη διαδικασία Push γίνεται εισαγωγή ενός στοιχείου στην κορυφή της στοίβας Pop Εξαγωγή ενός στοιχείου από την κορυφή της στοίβας Top Το στοιχείο που βρίσκεται στην κορυφή της στοίβας Empty Η στοίβα είναι άδεια

Βιβλιοθήκη Δήλωση στοίβας stack μεταβλητές; π.χ. stack s1,s2; Δηλώνει 2 στοίβες (s1,s2) που θα δέχονται ακέραιους αριθμούς Διδάσκων: Παύλος Παυλικκάς8

Παράδειγμα 1 Να δημιουργήσετε το πρόγραμμα που διαβάζει απεριόριστους αριθμούς από το αρχείο stack1.in και τους τυπώνει στο αρχείο stack1.out με αντίστροφη σειρά Διδάσκων: Παύλος Παυλικκάς9

Παράδειγμα 1 #include using namespace std; int main() { FILE *fin, *fout; stack num; int N; fin=fopen("stack1.in","r"); fout=fopen("stack1.out","w"); while( feof( fin ) == 0 ) { fscanf( fin, "%d", &N ); num.push( N ); } while( !num.empty() ) { N = num.top(); fprintf( fout, "%d\n", N); num.pop(); } fclose(fin); fclose(fout); return 0; } Διδάσκων: Παύλος Παυλικκάς10

Διδάσκων: Παύλος Παυλικκάς11