Είμαι σάρωση ενός μεγάλου αρχείου προέλευσης δεδομένων, επί του παρόντος περίπου 8 εκατομμύρια εγγραφές, εξαγωγή σε στοιχειοσειράς ανά είσοδο, το οποίο θα ήθελα κατ 'αλφαβητική σειρά.
Currenlty Τους έβαλα σε μια σειρά, στη συνέχεια, το είδος δείκτη να τα χρησιμοποιούν qsort()οποίο δουλεύει μια χαρά.
Αλλά από περιέργεια Σκέφτομαι αντί για την εισαγωγή κάθε χορδή σε μια δομή δεδομένων που τους διατηρεί σε αλφαβητική σειρά όπως τους σαρώσει από την πηγή δεδομένων, εν μέρει για την εμπειρία της emlplementing μία, εν μέρει επειδή θα αισθάνονται πιο γρήγορα, χωρίς την αναμονή για το είδος για να ολοκληρωθεί μετά την ολοκλήρωση της σάρωσης (-:
Ποια δομή δεδομένων θα είναι το πιο εύκολο να εφαρμοστεί σε C;
ΕΚΣΥΓΧΡΟΝΙΖΩ
Για να διευκρινιστεί, είναι οι μόνες εργασίες που πρέπει να εκτελέσει την εισαγωγή ενός στοιχείου και απόρριψη του δείκτη όταν το κάνει, και με αυτό εννοώ για κάθε στοιχείο στην αρχική σειρά χωματερή έναν ακέραιο αριθμό που αντιπροσωπεύει τη σειρά είναι στο μετά τη διαλογή.
ΠΕΡΙΛΗΨΗ
- Ο ευκολότερος να εφαρμόσει τα δυαδικά δέντρα αναζήτησης.
- Αυτο εξισορρόπηση δυαδικά δέντρα είναι πολύ καλύτερα, αλλά μη τετριμμένη για την εφαρμογή της.
- Η εισαγωγή μπορεί να γίνει επαναληπτικά, αλλά σε σειρά διάσχισης για την απόρριψη της αποτελέσματα και μετά την παραγγελία διάσχισης για τη διαγραφή του δέντρου, όταν γίνεται τόσο απαιτούν είτε αναδρομή ή ρητή στοίβα.
- Χωρίς την εφαρμογή εξισορρόπηση, σειρές διέταξε εισόδου θα έχει ως αποτέλεσμα την εκφυλισμένη χειρότερη περίπτωση η οποία είναι συνδεδεμένη λίστα. Αυτό σημαίνει βαθιά δέντρα που έχουν αντίκτυπο σε μεγάλο βαθμό την ταχύτητα της λειτουργίας εισαγωγής.
- Ανακάτεμα της εισόδου ελαφρά μπορεί να διαλύσει διέταξε εισόδου σημαντικά και είναι πιο εύκολο να εφαρμοστεί αυτή η εξισορρόπηση.













