Ποια είναι η διαφορά μεταξύ ενός πίνακα 2D και ενός πίνακα 3D;


Απάντηση 1:

Βασικά η ίδια διαφορά μεταξύ ενός τετραγώνου και ενός κύβου, μια ακόμη διάσταση. Εάν απεικονίσετε μια διάταξη 2D ως κομμάτι χαρτιού με ένα τετράγωνο πλέγμα, χαρτί γραφικών. Στη συνέχεια, μια τρισδιάστατη συστοιχία είναι μια στοίβα από αυτά τα κομμάτια χαρτιού.

Με περισσότερους κώδικες

Το Array2d [1,2] θα ευρετηριάζει την πρώτη είσοδο και την δεύτερη κάτω.

Το Array3D [1,2,3] θα ευρετηριάζει την πρώτη είσοδο και την δεύτερη κάτω στο τρίτο φύλλο χαρτιού κάτω από τη στοίβα.


Απάντηση 2:

Όσον αφορά την έννοια των πραγμάτων, ένας πίνακας 2D αντιπροσωπεύει ένα μηδενικό πλέγμα (x, y), ενώ μια τρισδιάστατη συστοιχία αντιπροσωπεύει χώρο μηδενικού (x, y, z).

Όσον αφορά τη σύνταξη:

int arr2d [MAX_ROW] [MAX_COL];
int arr3d [MAX_WIDTH] [MAX_HEIGHT] [MAX_DEEP].

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