MST

星途 面试题库

面试题:C语言中红黑树节点的基本结构如何定义

请用C语言代码定义红黑树节点的基本结构,包括节点存储的数据、左右子节点指针以及表示节点颜色的属性。同时说明红黑树节点颜色通常如何表示。
11.0万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试
// 定义红黑树节点颜色
typedef enum {
    RED,
    BLACK
} Color;

// 定义红黑树节点结构
typedef struct RBNode {
    int data;               // 节点存储的数据,这里假设为int类型,可根据实际情况修改
    struct RBNode *left;    // 左子节点指针
    struct RBNode *right;   // 右子节点指针
    Color color;            // 节点颜色
} RBNode;

红黑树节点颜色通常使用枚举(如上述代码中的enum)来表示,常见的表示方式是用一个整数值来代表两种颜色,如0代表黑色(BLACK),1代表红色(RED) 。这种方式简洁明了,并且在代码逻辑判断中易于使用。