使用指针删除单链接列表中的最后一个节点

问题描述 投票:0回答:1

我正在尝试删除CPP中单链接列表中的最后一个节点,即在10-> 20-> 30中,我正在尝试删除值为30的节点。但是由于我没有指向LL的头,并且我只有指向要删除的节点的指针,我执行以下操作:

    *last_node=NULL;
    // Or maybe I could have done *last_node=*(last_node->next)

现在,当我尝试从头指针开始遍历所有节点来打印链接列表时,将得到以下输出:

10
20
0

而我应该只有20岁。为什么我要面对这个问题?我知道许多人已经给出了关于是否可以删除最后一个节点的答案。但是当我尝试时,我得到0代替最后一个节点。有人可以解释一下为什么最后一个节点值被替换为0吗?

c++ pointers data-structures linked-list singly-linked-list
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.