【发布时间】:2016-02-22 19:15:36
【问题描述】:
您好,我需要实现一个带有单独链接的 Hashtable。为此,我正在实现一个 Node 类和 LinkedList。链表中包含的节点具有属性数据、计数、指向下一个的链接和指向上一个的链接。链表不应包含具有重复值的值,但如果插入了另一个具有相同值的节点,则应增加该节点的计数.以上是我的代码,但我不知道如何实现插入功能,以便在找到重复节点时增加计数。
public void insertToHead(Node newNode) {
newNode.setNext(head);
head = newNode;
}
public void drop(Node newNode) {
newNode.getPrev().setNext(newNode.getNext());
}
public void insert(String newData) {
Node newNode = new Node(newData);
Node temp = head;
if (temp == null) {
insertToHead(newNode);
newNode.incrementCount();
nodeCount++;
} else {
for(int i=0;i<nodeCount;i++){
if(temp.getData().equals(newNode.getData())){
if(temp.getPrev()==null){
temp.incrementCount();
head=temp;
}
if(temp.getNext()==null){
temp.getPrev().setNext(null);
temp.incrementCount();
insertToHead(temp);
}
else{
temp.incrementCount();
drop(temp);
insertToHead(temp);
}
}
temp = temp.getNext();
}
insertToHead(newNode);
nodeCount++;
}
}
【问题讨论】:
-
if(temp==){不会编译! -
感谢您的回复,这是我的错误,但仍然无法正常工作
标签: java