Πίνακας (δομή δεδομένων): Διαφορά μεταξύ των αναθεωρήσεων

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
μ r2.7.2+) (Ρομπότ: Τροποποίηση: ru:Массив
μ r2.7.3) (Ρομπότ: Αλλαγή fa:آرایه (رایانه) σε fa:آرایه (ساختمان داده‌ها); διακοσμητικές αλλαγές
Γραμμή 3:
Η έννοια του πίνακα είναι ανάλογη με αυτή του [[διάνυσμα|διανύσματος]], ή των [[Πίνακας (μαθηματικά)|πινάκων]] στα μαθηματικά.
 
Αρκετές άλλες βασικές δομές δεδομένων, όπως οι [[δυναμικός πίνακας | δυναμικοί πίνακες]], οι [[πίνακας κατακερματισμού | πίνακες κατακερματισμού]] ή και πιο σύνθετες, όπως το [[Πλέγμα (χωρική δομή δεδομένων) | πλέγμα]] βασίζονται, για την υλοποίησή τους σε πίνακες.
 
== Μονοδιάστατοι Πίνακες ==
Οι μονοδιάστατοι πίνακες αποτελούν την πιο απλή και ίσως, την πιο συχνά εφαρμοσμένη υποκατηγορία πινάκων. Το χαρακτηριστικό τους είναι ότι αρκεί ένας ακέραιος για να ορίσει τη θέση ενός στοιχείου του πίνακα. Λέμε ότι ένας μονοδιάστατος πίνακας έχει μέγεθος Ν, όταν περιέχει Ν θέσεις.
 
[[Αρχείο:Pinakas upologistes.png | right | 250px | thumb | Ένας πίνακας 6 στοιχείων.]]
=== Παράδειγμα ===
Στην διπλανή εικόνα βλέπετε ένα παράδειγμα μονοδιάστατου πίνακα 6 θέσεων, του οποίου το πρώτο στοιχείο είναι το 4, το δεύτερο (όπως ακριβώς και το έκτο) είναι το 9, κ.ο.κ. Για να εντοπίσουμε ένα στοιχείο, αρκεί να το αναζητήσουμε με βάση τη θέση του. Παρόλο που αυτή η διαδικασία χρειάζεται σταθερό χρόνο (πολυπλοκότητα Ο(1)), η παρόμοια διαδικασία της αναζήτησης με βάση την τιμή (και όχι τη θέση) ενός στοιχείου απαιτεί γραμμικό χρόνο ως προς τον αριθμό των στοιχείων του πίνακα (πολυπλοκότητα Ο(Ν)).
 
=== Αρίθμηση θέσεων πινάκων ===
Στον πίνακα του προηγούμενου παραδείγματος, μπορούμε να δούμε ότι ο πίνακας αριθμείται ξεκινώντας από το 0 και όχι από το 1. Οπότε, βλέπουμε "θέση 0" για το πρώτο στοιχείο του. Αυτό αποτελεί μια κοινή τακτική αρίθμησης για την πλειοψηφία των σύγχρονων γλωσσών προγραμματισμού, όπως είναι η [[Java]], [[C/C++]] κλπ. Έτσι, δοσμένου ενός πίνακα Ν θέσεων, μπορούμε να προσπελάσουμε τα στοιχεία 0 μέχρι Ν-1. Αναζήτηση του στοιχείου στη θέση Ν θα οδηγούσε σε προγραμματιστικό λάθος (κατά κανόνα) κατά την εκτέλεση.
 
Ταυτόχρονα, παλιότερες γλώσσες προγραμματισμού, όπως οι [[Fortran]] και [[Cobol]], οι κάποιες σύγχρονες, όπως [[Matlab]] ξεκινούν την αρίθμηση πινάκων από το 1 και συνεπώς, οι προσπελάσιμες θέσεις ενός πίνακα μεγέθους Ν είναι οι θέσεις 1 μέχρι Ν.
 
=== Πράξεις επί πινάκων ===
Όπως κάθε δομή δεδομένων, έτσι και οι πίνακες υλοποιούν τις βασικές πράξεις τους: εισαγωγή, αναζήτηση, διαγραφή.
 
== Πολυδιάστατοι Πίνακες ==
Αποτελούν γενίκευση των μονοδιάστατων πινάκων. Εδώ, η θέση ενός στοιχείου δεν περιγράφεται από έναν μοναδικό ακέραιο, αλλά από μια συλλογή ακεραίων μεγέθους όσο και οι διαστάσεις του πίνακα. Π.χ. ένας δισδιάστατος πίνακας χρειάζεται δύο ακεραίους για να προσπελάσει ένα στοιχείο. Παράδειγμα δισδιάστατων πινάκων είναι τα λογιστικά φύλλα (π.χ. [[Excel]]) όπου πολύ εύκολα μπορούμε να βρούμε ένα στοιχείο (κελί), δοσμένης της γραμμής, αλλά και της στήλης στην οποία βρίσκεται.
 
 
[[Κατηγορία:Επιστήμη υπολογιστών]]
Γραμμή 37 ⟶ 36 :
[[es:Vector (informática)]]
[[et:Massiiv (programmeerimine)]]
[[fa:آرایه (رایانهساختمان داده‌ها)]]
[[fi:Taulukko (tietorakenne)]]
[[fr:Tableau (structure de données)]]