Σε αυτό το σεμινάριο, θα συζητήσουμε για ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ από τα βασικά. Θα κατανοήσουμε τους διαφορετικούς τύπους δομών δεδομένων και τις χρήσεις τους και πώς μπορούμε να τις εφαρμόσουμε.
Τι είναι η δομή δεδομένων;
Μια δομή δεδομένων είναι μια συλλογή δεδομένων που μπορούν να αποθηκευτούν με οργανωμένο τρόπο, έτσι ώστε η πρόσβαση στα δεδομένα, να τροποποιηθεί αποτελεσματικά.
Χρήσεις δομών δεδομένων
- Οι δομές δεδομένων χρησιμοποιούνται σε διαφορετικά είδη εφαρμογών, όπως σχεσιακές βάσεις δεδομένων, οι οποίες χρησιμοποιούν ευρετήρια B-tree για την ανάκτηση των δεδομένων.
- Ο πίνακας Hash χρησιμοποιείται στη σχεδίαση μεταγλωττιστή.
- Αυτά χρησιμοποιούνται σε διαφορετικούς αλγόριθμους όπως αναζήτηση, ταξινόμηση.
- Η υπηρεσία ευρετηρίου Διαδικτύου χρησιμοποιεί δομές δεδομένων.
Τύποι δομών δεδομένων
Τύποι DS | Υποτύπος |
Γραμμικός | Παράταξη |
Συνδεδεμένη λίστα | |
Στοίβα | |
Ουρά | |
Δέντρο | Δυαδικό δέντρο |
Δυαδικό δέντρο αναζήτησης | |
Σωρός | |
Hashing | Πίνακας κατακερματισμού |
Hash δέντρο | |
Διάγραμμα | Γράφημα απόφασης |
Κατευθυνόμενο γράφημα | |
Μήτρα |
Τι είναι η γραμμική δομή δεδομένων;
Μια γραμμική δομή δεδομένων είναι ένας τύπος δομής δεδομένων όπου τα δεδομένα μπορούν να διασχίζονται διαδοχικά. Η σειρά, η συνδεδεμένη λίστα, η στοίβα, η ουρά είναι παραδείγματα γραμμικής δομής δεδομένων. Ανατρέξτε στην παρακάτω εικόνα για λεπτομέρειες:
Τι είναι η Δομή Δεδομένων Δέντρων
Μια δομή δεδομένων δέντρων είναι μια ιεραρχική δομή δεδομένων. Έχει κόμβους που συνδέονται από άκρα. Για περισσότερες λεπτομέρειες, ανατρέξτε στην παρακάτω εικόνα:
Τι είναι ο κατακερματισμός
Το κατακερματισμό είναι μια δομή δεδομένων που χρησιμοποιεί μια συνάρτηση κατακερματισμού για να χαρτογραφήσει τα δεδομένα σε ένα ζεύγος τιμών-κλειδιών για να ανακτήσει τα δεδομένα πιο γρήγορα. Παραδείγματα Hashing είναι πίνακας Hash, δέντρο Hash. Ανατρέξτε στην παρακάτω εικόνα για λεπτομέρειες:
Τι είναι το γράφημα
Το γράφημα είναι μια μη γραμμική, εικονική αναπαράσταση δεδομένων που αποτελείται από άκρα και κορυφές. Ανατρέξτε στην παρακάτω εικόνα για λεπτομέρειες:
Διαφορά μεταξύ γραμμικής και μη γραμμικής δομής δεδομένων
Αριθ. Sl | Βασικά σημεία | Γραμμική δομή δεδομένων | Μη γραμμική δομή δεδομένων |
1 | Στοίχιση δεδομένων | Τα δεδομένα αποθηκεύονται διαδοχικά | Τα δεδομένα αποθηκεύονται σε μορφή ιεραρχίας |
2 | Επίπεδα | Συμμετέχει ένα επίπεδο | Συμμετέχει πολλαπλό επίπεδο |
3 | Περίπλοκο | Εύκολο στην εφαρμογή | Η εφαρμογή είναι περίπλοκη |
4 | Διασχίζοντας | Τα δεδομένα μπορούν να διασχίζονται σε μία εκτέλεση | Τα δεδομένα δεν μπορούν να διασταυρωθούν σε μία μόνο εκτέλεση, αλλά χρειάζονται πολλές διαδρομές |
5 | Αξιοποίηση της μνήμης | Δεν είναι αποτελεσματικό | Αποτελεσματικός |
6 | Παραδείγματα | Σειρά, συνδεδεμένη λίστα, στοίβα, ουρά | Γράφημα, δέντρο |
7 | Εφαρμογή | Χρησιμοποιείται στην ανάπτυξη λογισμικού | Χρησιμοποιείται σε Επεξεργασία Εικόνας, Επεξεργασία Φωνής, Τεχνητή Νοημοσύνη |
Ορισμένες εισαγωγές ερωτήσεις και απαντήσεις σχετικά με τη δομή δεδομένων
Qn 1. Τι εννοείτε με το ADT στη δομή δεδομένων;
Ans: ADT σημαίνει Αφηρημένος τύπος δεδομένων. Η κλάση ή τα αντικείμενα είναι ένα παράδειγμα ADT. Όταν χρησιμοποιούμε και Class ή Object, ορίζουμε τη συμπεριφορά με ένα σύνολο τιμών και ένα σύνολο πράξεων. Το ADT μας λέει μόνο ποια λειτουργία πρέπει να εκτελέσουμε. Δεν μας λέει πώς εφαρμόστηκε η λειτουργία εσωτερικά.
Για παράδειγμα :
- Λίστα
- size () -> Το μέγεθος μας δίνει τον αριθμό των στοιχείων, αλλά δεν δείχνει πόσο εσωτερικά υπολογίζει για να δώσει το αποτέλεσμα.
- insert (x) -> insert μας βοηθά να εισάγουμε το στοιχείο αλλά δεν λέει πώς γράφεται η λογική.
- remove (x) -> Παρομοίως, η μέθοδος κατάργησης χρησιμοποιείται για την αφαίρεση των στοιχείων χωρίς να πει την εφαρμογή.
- get (i) -> get χρησιμοποιείται για πρόσβαση στα στοιχεία.
Qn 2. Ποια είναι τα πλεονεκτήματα της δομής δεδομένων;
- Ans:
- Χρησιμοποιώντας τη Δομή δεδομένων, μπορούμε να αποθηκεύουμε αποτελεσματικά δεδομένα σε μια συσκευή αποθήκευσης.
- Η δομή δεδομένων παρέχει μια εύκολη επιλογή για την ανάκτηση των δεδομένων από μια συσκευή αποθήκευσης.
- Μπορεί να επεξεργαστεί αποτελεσματικά μικρούς και μεγάλους αριθμούς δεδομένων
- Χρησιμοποιώντας δομές δεδομένων, όπως γράφημα, μπορούμε να λύσουμε πραγματικά προβλήματα
- Τα συστήματα βάσεων δεδομένων χρησιμοποιούν ευρετηρίαση χρησιμοποιώντας έναν πίνακα κατακερματισμού και έναν πίνακα για να ανακτήσουν τα δεδομένα αποτελεσματικά.
Qn 3. Τι είναι η πρωτόγονη δομή δεδομένων;
Απ .: Οι πρωτότυπες δομές δεδομένων είναι καθορισμένοι από το σύστημα τύποι δεδομένων που υποστηρίζονται από διαφορετικές γλώσσες προγραμματισμού. Παράδειγμα: int, double, float, boolean, χαρακτήρας.
Qn 4. Τι είναι μια σύνθετη δομή δεδομένων;
Απ .: Οι δομές δεδομένων όπως πίνακας Hash, Tree, Heap, Graph καλούνται μια σύνθετη δομή δεδομένων. Η εφαρμογή αυτών των δομών δεδομένων είναι πολύπλοκη.
Qn 5. Ποιοι είναι οι δύο κύριοι τύποι δομής δεδομένων;
Απ .: Κυρίως, οι δομές δεδομένων χωρίζονται σε δύο μέρη:
- Γραμμική δομή δεδομένων: Στοίβα, Ουρά, Παράταξη, Συνδεδεμένη λίστα
- Μη γραμμική δομή δεδομένων: Δέντρο, γράφημα
Συμπέρασμα
Μέχρι τώρα, έχουμε καλύψει τα βασικά του Δομή δεδομένων. Στο επόμενο θέμα, θα γράψουμε για το Παράταξη. Για περισσότερες λεπτομέρειες για αυτήν την ενότητα, ανατρέξτε σε αυτό σύνδεσμος.
Γεια, είμαι ο Himadri Das, είμαι blogger και συνεργάτης ανοιχτού κώδικα. Έχω περίπου 11 χρόνια εμπειρίας στον τομέα της Πληροφορικής. Αυτή τη στιγμή εργάζομαι σε μια Startup Company ως Υπεύθυνος Διασφάλισης Ποιότητας. Έχω πρακτική εμπειρία σε Appium, Selenium, QTP, Locust, Automation Framework, Performance Testing, Functional Testing, Java, python, Shell scripting, MySql, Redis, Kafka κ.λπ. Εκτός από τη δουλειά μου και τη συγγραφή ιστολογίων, μου αρέσει να παίζω κιθάρα, λατρεύουν τα ταξίδια και λατρεύουν να παρακολουθούν κρίκετ και ποδόσφαιρο. Αν θέλετε να μάθετε περισσότερα για μένα, επισκεφτείτε το προφίλ μου στο linkedin .