c# - 无法在 C# 中删除单链表的第一个节点
问题描述
我正在尝试在 C# 中实现一个单链表。为了删除一个节点,我编写了以下代码:
public void deleteNode(int value)
{
Node node = this;
if (node.data == value)
{
node = node.next;
}
else
{
while (node != null && node.next != null)
{
if (node.next.data == value)
{
node.next = node.next.next;
}
node = node.next;
}
}
}
我可以删除所有节点,但第一个使用它。为什么node.next = node.next.next
更新此实例,但node = node.next
不更新?
解决方案
推荐阅读
- java - 按大小顺序打印给定字符串的所有子字符串
- python - 如何在不更改值的情况下更改数据框列名?
- javascript - 创建类的实例以调用静态方法
- r - 我不知道我的 CARET 模型是分类还是回归?
- ruby - 如何在一个动作中使用变量到另一个动作
- python - 如果连接的组合是素数,则接受用户输入并打印
- amazon-web-services - 如何使用 Cloudwatch Event 执行 Lambda 代理集成
- mongodb - 从字符串 Mongodb 的末尾删除子字符串
- couchdb - 如何从超级账本结构中查看或检索数据
- sql - Pivot sql 输出 - Google sql 面试题