Ψάχνω να δημιουργήσουμε ένα γενικό BST. Τίποτα δεν φαντάζεστε κανένα κρεβάτι, αλλά εγώ προσπαθώ να αποφασίσει ο καλύτερος τρόπος για να παρακολουθείτε το είδος του κενού *. Εδώ είναι η διασύνδεση των κόμβων:
typedef struct
{
void *data;
struct TreeNode *left;
struct TreeNode *right;
} TreeNode;
Ωστόσο, όταν γράφω προσθέσετε / αφαιρέσετε, θα πρέπει να κάνετε συγκρίσεις, ως εκ τούτου, θα πρέπει να παρακολουθείτε το είδος των δεδομένων που «δεδομένα» είναι στραμμένη σε αυτά, έτσι δεν είναι;
Βασική ιδέα είναι να έχουμε μια NODE_TYPE απαρίθμησης και μια λειτουργία compareTreeNodes που δέχεται τις δύο TreeNodes και το απαρίθμησης ως 3ο arg. Αυτό θα επιτρέψει τη λειτουργία για να καθορίσει τι πρέπει να ρίξει το κενό * να.
Κάθε άλλο / καλύτερη σκέψεις;













