下面关于单链表和双链表的描述中,正确的是( )。

wk709237 单选题 共 个子题
struct DNode {
    int data;
    DNode* prev;
    DNode* next;
};

// 在双链表中删除指定节点
void deleteNode(DNode* node) {
    if (node->prev) {
        node->prev->next = node->next;
    }
    if (node->next) {
        node->next->prev = node->prev;
    }
    delete node;
}

struct SNode {
    int data;
    SNode* next;
};

// 在单链表中删除指定节点
void deleteSNode(SNode* head, SNode* node) {
    SNode* prev = head;
    while (prev->next != node) {
        prev = prev->next;
    }
    prev->next = node->next;
    delete node;
}
A

双链表删除指定节点是 $O(1)$,单链表是 $O(1)$

B

双链表删除指定节点是 $O(n)$,单链表是 $O(1)$

C

双链表删除指定节点是 $O(1)$,单链表是 $O(n)$

D

双链表删除指定节点是 $O(n)$,单链表是 $O(n)$

正在加载题目数据…
已答 /
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析
讨论
发布
登录后参与讨论 立即登录
发布讨论需先绑定并验证手机号 去绑定手机号
加载中…
我
我
回复 @
回复 @
发送
还没有人讨论,来发表第一条吧