java双向链表删除节点

标签 java doubly-linked-list

我得到了一个名为 key 的整数作为参数。我需要知道如何删除位置键处的节点。 Ndata 来 self 的 Node 类。

    public void deleteNode(int key)
    {
       Node<E> temp = head; 
       while(temp.Ndata != key)//gives me error as not compatible types.    
       {
            temp = temp.next;
       }
       if(temp == head)
            head = temp.next;
       else
            temp.prev.next = temp.next;
       if(temp == tail)
            tail == temp.prev;
       else
            temp.prev.next = temp.next;
     }

最佳答案

假设您需要找到存储值key的节点,您需要执行以下操作之一:

Node<Integer> temp = head;

或者:

public void deleteNode(E key)

这确保了通用 Node 类的类型兼容性。

关于java双向链表删除节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29617498/

相关文章:

java - 如何使用JPA和Hibernate分离实体的关键公共(public)类?

java - 如何迭代地将组件添加到 Swing GroupLayout ParallelGroup?

java - 在给定节点引用的情况下,删除 Java 中 LinkedList 中的节点

java - 高效获取 LinkedHashSet 中最近插入的元素

c - 警告 : assignment from incompatible pointer type in linked list struct

java - 客户端 HTTP Post 到外部站点

c# - 将 asp.net c# webservice datetime 值转换为 android(Java) 中的 Date 对象

java - "Cannot find symbol"为我自己的类(class)

algorithm - 为什么使用双向链表删除哈希表的元素是O(1)?