latviski

Μονοδιάστατοι Πίνακες: Θεωρία

1. Ορισμός και Χρήση

Ο μονοδιάστατος πίνακας είναι ένα πεπερασμένο και διατεταγμένο σύνολο στοιχείων του ίδιου τύπου, τα οποία αποθηκεύονται σε συνεχόμενες θέσεις μνήμης και αναγνωρίζονται με έναν δείκτη θέσης (index).
Ο δείκτης παίρνει ακέραιες τιμές και δείχνει σε ποια θέση βρίσκεται το κάθε στοιχείο.

Στη ΓΛΩΣΣΑ, η αρίθμηση των θέσεων ξεκινά πάντα από το 1. Δηλαδή, το πρώτο στοιχείο είναι το Α[1].

Παράδειγμα:

Α[1] = 5

Α[2] = 10

Α[3] = -2

Εδώ ο πίνακας Α έχει τρία στοιχεία: 5, 10 και -2.


2. Πότε χρησιμοποιούμε πίνακες

Η χρήση πινάκων είναι ιδιαίτερα χρήσιμη όταν:

  • Θέλουμε να αποθηκεύσουμε μεγάλο αριθμό δεδομένων του ίδιου τύπου.
  • Χρειάζεται να εφαρμόσουμε επαναλαμβανόμενες πράξεις σε όλα τα στοιχεία.
  • Τα δεδομένα σχετίζονται και η διατήρησή τους σε μία ενιαία δομή είναι πιο αποδοτική.

Πλεονέκτημα (+):

  • Εύκολη διαχείριση μεγάλου όγκου δεδομένων.

Μειονεκτήματα (-):

  • Δεσμεύουν μνήμη από την αρχή της εκτέλεσης (στατικοί πίνακες).
  • Το μέγεθός τους είναι σταθερό και δεν αλλάζει κατά την εκτέλεση (περιορισμένη ευελιξία).
  • Η άσκοπη χρήση μπορεί να οδηγήσει σε σπατάλη μνήμης.

3. Στατικές και Δυναμικές Δομές

Οι πίνακες που χρησιμοποιούμε στη ΓΛΩΣΣΑ είναι στατικές δομές:

  • Το μέγεθός τους καθορίζεται κατά τη δήλωση.
  • Τα στοιχεία αποθηκεύονται σε συνεχόμενες θέσεις μνήμης.

Στον προγραμματισμό γενικότερα υπάρχουν και δυναμικές δομές (λίστες, ουρές, στοίβες) που:

  • Δεν έχουν σταθερό μέγεθος.
  • Αυξομειώνουν τον αριθμό στοιχείων κατά την εκτέλεση.
  • Δεν αποθηκεύονται απαραίτητα σε συνεχόμενες θέσεις μνήμης.

4. Σχέση Αλγορίθμου και Δομών Δεδομένων

Σύμφωνα με την εξίσωση του Wirth:

ΑΛΓΟΡΙΘΜΟΣ + ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ = ΠΡΟΓΡΑΜΜΑ

Η δομή δεδομένων (π.χ. πίνακας) και ο αλγόριθμος που την επεξεργάζεται είναι αλληλένδετα:
Δεν υπάρχει σωστή λύση χωρίς την κατάλληλη επιλογή και χρήση της δομής.


5. Τυπικές Επεξεργασίες Μονοδιάστατων Πινάκων

  • Εισαγωγή στοιχείων – καταχώρηση δεδομένων στον πίνακα.
  • Εμφάνιση στοιχείων – προβολή των τιμών.
  • Υπολογισμός αθροίσματος όλων των στοιχείων.
  • Εύρεση μέγιστου/ελάχιστου στοιχείου και της θέσης του.
  • Ταξινόμηση στοιχείων κατά αύξουσα ή φθίνουσα σειρά.
  • Αναζήτηση συγκεκριμένου στοιχείου.
  • Συγχώνευση δύο πινάκων σε έναν νέο.

6. Δημιουργία και Δήλωση Πίνακα στη ΓΛΩΣΣΑ

  • Οι πίνακες δηλώνονται αποκλειστικά στο τμήμα δηλώσεων του προγράμματος, ποτέ στο τμήμα εντολών.
  • Η δήλωση συνοδεύεται από τον τύπο των στοιχείων και το μέγεθος.

Παράδειγμα:

ΜΕΤΑΒΛΗΤΕΣ

ΑΚΕΡΑΙΕΣ: Α[100]

Αυτό δεσμεύει 100 θέσεις μνήμης για ακέραιους αριθμούς.


7. Τύπος Στοιχείων

  • Όλα τα στοιχεία ενός πίνακα πρέπει να είναι του ίδιου τύπου.
  • Δεν μπορεί ένας πίνακας να περιέχει διαφορετικούς τύπους (π.χ. και χαρακτήρες και αριθμούς).

8. Αποθήκευση στη Μνήμη

  • Οι στατικοί πίνακες καταλαμβάνουν συνεχόμενες θέσεις μνήμης.
  • Η προσπέλαση γίνεται μέσω του δείκτη.

9. Αναζήτηση Στοιχείων

  • Σειριακή αναζήτηση: ελέγχουμε κάθε στοιχείο με τη σειρά.
  • Δυαδική αναζήτηση: εφαρμόζεται μόνο σε ταξινομημένους πίνακες, πιο γρήγορη μέθοδος.

10. Εντολή Εκχώρησης

Χρησιμοποιείται για να δώσουμε ή να αλλάξουμε τιμή σε ένα στοιχείο πίνακα:

Α[5] ← 100

Atbildēt