关闭

crack the code interview 2.3

250人阅读 评论(0) 收藏 举报
分类:

Implement an algorithm to delete a node in the middle of a single linked list, given only access to that node.

这道题的意思是这样的,本来我们删除一个节点,需要将上一个节点的next指向这个节点的next,但是能,现在不能对上一个节点进行操作了,只能对这个节点进行操作。那么直接覆盖这个节点的内容就行了。

struct LinkNode
{
    LinkNode * next;
    int value;
}

void deleteMiddle(LinkNode * currentNode)
{
    if (currentNode == NULL || currentNode->next == NULL)
        return false;
    LinkNode * next = currentNode->next;
    currentNode->next = next->next;
    currentNode->value = next->value;
    delete next;
    return true;
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:25370次
    • 积分:754
    • 等级:
    • 排名:千里之外
    • 原创:54篇
    • 转载:5篇
    • 译文:0篇
    • 评论:0条