当前位置: 首页 > 编程笔记 >

从C#中的LinkedList中删除指定的节点?

邵阳德
2023-03-14
本文向大家介绍从C#中的LinkedList中删除指定的节点?,包括了从C#中的LinkedList中删除指定的节点?的使用技巧和注意事项,需要的朋友参考一下

要从LinkedList中删除指定的节点,代码如下-

示例

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      LinkedList<int> list = new LinkedList<int>();
      list.AddLast(100);
      list.AddLast(200);
      list.AddLast(300);
      list.AddLast(400);
      list.AddLast(500);
      list.AddLast(300);
      list.AddLast(500);
      Console.WriteLine("LinkedList elements...");
      foreach(int i in list) {
         Console.WriteLine(i);
      }
      LinkedListNode<int> val = list.FindLast(300);
      Console.WriteLine("Specified value = "+val.Value);
      list.Remove(500);
      Console.WriteLine("LinkedList elements...UPDATED");
      foreach(int i in list) {
         Console.WriteLine(i);
      }
   }
}

输出结果

这将产生以下输出-

LinkedList elements...
100
200
300
400
500
300
500
Specified value = 300
LinkedList elements...UPDATED
100
200
300
400
300
500

示例

让我们看另一个例子-

using System;
using System.Collections.Generic;
public class Demo {
   public static void Main() {
      LinkedList<string> list = new LinkedList<string>();
      list.AddLast("Mark");
      list.AddLast("David");
      list.AddLast("Harry");
      list.AddLast("John");
      list.AddLast("Kevin");
      string[] strArr = new string[5];
      list.CopyTo(strArr, 0);
      Console.WriteLine("LinkedList elements...after copying to array");
      foreach(string str in strArr) {
         Console.WriteLine(str);
      }
      list.Remove("Harry");
      Console.WriteLine("LinkedList elements...UPDATED");
      foreach(string str in list) {
         Console.WriteLine(str);
      }
   }
}

输出结果

这将产生以下输出-

LinkedList elements...after copying to array
Mark
David
Harry
John
Kevin
LinkedList elements...UPDATED
Mark
David
John
Kevin
 类似资料:
  • 这是我的remove函数,用于删除具有元素的节点。我得到了一个seg错误,我很确定这是因为temp->prev是前面的哨兵,所以从技术上来说,它不在双链表中。如果这是正确的,我实际上如何防止这种情况?如有任何帮助,不胜感激。 编辑:刚刚更新了代码,但仍然出现了Seg错误

  • 问题内容: 我正在O(1)将n个条目推入Java 。 我想在以后的O(1)删除一些独特的项目。 我虽然要保留指向“”的唯一节点的数组,以便稍后再删除它们。 有没有办法在其他任何Java类上执行此操作? 我尝试将迭代器存储到项目。这样我就可以使用。但我知道当时列表上只能有一个迭代器。 我知道一个简单的解决方案可以自己实现链接列表。但是我宁愿使用或已经实施的其他一些Java类。 问题答案: Java

  • 一直在阅读文件和其他职位,但我无法删除一个节点。我试图通过一个值来选择节点。 然后在结果上调用 remove 方法 除了空错误值之外,什么都不会发生。我使用的是最新的firebase,大多数示例都是针对旧版本的,因此我不确定是否需要获取密钥,然后尝试删除该密钥作为参考? 这是第一次使用 firebase,所以我不确定我是否正确保存了数据。这是要保存的代码。 和屏幕截图

  • 本文向大家介绍C++删除链表中间节点的方法,包括了C++删除链表中间节点的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C++删除链表中间节点的方法。分享给大家供大家参考,具体如下: 题目: 给定链表头结点head,实现删除链表的中间节点函数。 解题思路及代码: 快慢指针,快指针走两步,慢指针一步。 当快指针走到终点时,慢指针正好是链表中间节点,删除此节点即可。 链表结构定义: 算法

  • 双链表节点是在main函数中创建的。Ender和header已定义。在删除节点函数处中断-ender为空。 释放最后一个和第一个输入的内存的最佳方法是什么,即:删除:233,A和888,F?

  • 改变原始数组,过滤掉指定的值。 使用 Array.filter() 和 Array.includes() 来剔除指定的值。使用 Array.length = 0 将数组中的长度重置为零,并且通过 Array.push() 只使用 pulled 值重新填充数组。 (对于不改变原始数组的代码片段,请参阅without) const pull = (arr, ...args) => { let ar