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

Περιεχόμενο που διαγράφηκε Περιεχόμενο που προστέθηκε
V nelly (συζήτηση | συνεισφορές)
V nelly (συζήτηση | συνεισφορές)
Γραμμή 18:
 
=== Πράξεις επί πινάκων ===
Όπως κάθε δομή δεδομένων, έτσι και οι πίνακες υλοποιούνυποστηρίζουν τις βασικές πράξειςμεθόδους τους: εισαγωγή, αναζήτηση, και διαγραφή ενός στοιχείου.
Εισαγωγή (ψευδοκώδικας και κώδικας σε Java ή C):
'''διαδικασία''' ''Εισαγωγή''('''Πίνακας''' ''πίνακας'', '''ακέραιος''' ''θέση'', '''ακέραιος''' ''στοιχείο'') {
πίνακας[θέση] = στοιχείο; ''// Αποθήκευση του στοιχείου "στοιχείο" στη θέση "θέση" ''
}
 
'''void''' ''insert''('''int[]''' ''array'', '''int''' ''index'', '''int''' ''element'') {
array[index] = element;
}
 
Αναζήτηση ενός στοιχείου σε δοσμένη θέση (ψευδοκώδικας και κώδικας σε Java ή C):
'''ακέραιος''' ''αναζήτηση''('''Πίνακας''' ''πίνακας'', '''ακέραιος''' ''θέση'') {
'''επιστροφή''' πίνακας[θέση]; ''// Αποθήκευση του στοιχείου "στοιχείο" στη θέση "θέση" ''
}
 
'''void''' ''search''('''int[]''' ''array'', '''int''' ''index'') {
'''return''' array[index];
}
 
 
Προκειμένου να διαγραφεί ένα στοιχείο πρέπει να γίνει κάποια σύμβαση, όπως για παράδειγμα ότι ένα διαγραμμένο στοιχείο έχει την τιμή -1 (τιμή "σημαία" ή flag). Εναλλακτικά, το τελευταίο στοιχείο του πίνακα μπορεί να αντιγραφεί στη θέση του διαγραμμένου στοιχείου και στη συνέχεια, ένας δείκτης να αποθηκεύει τη θέση του τελευταίου "σωστού" στοιχείου του πίνακα:
'''ακέραιος''' ''διαγραφή''('''Πίνακας''' ''πίνακας'', '''ακέραιος''' ''θέση'') {
πίνακας[θέση] = πίνακας[τελευταίο]; ''// Στη θέση "θέση" μεταφέρουμε την τιμή που υπήρχε στη θέση "τελευταίο" ''
τελευταίο = τελευταίο - 1;
}
 
'''void''' ''delete''('''int[]''' ''array'', '''int''' ''index'') {
array[index] = array[last];
last--;
}
 
== Πολυδιάστατοι Πίνακες ==