【发布时间】:2020-03-26 07:42:43
【问题描述】:
我正在开发一个 java 项目,该项目将节点添加到带有 int 值的链表的末尾。但是,节点值必须在链表内的 0....n-1 之间。我已经编写了关于如何在列表末尾附加元素并检查元素是否已经存在的代码。问题是如何增量添加元素并从 0 开始。
ex.{} 添加 3 : 错误(必须添加 0)
{0} 加 2:错误(必须加 1)
我写了下面的代码:
class ItemNode {
public int item;
public ItemNode next;
public ItemNode(int item) {
this.item = item;
this.next = null;
}
}
class ItemsList {
private int nbNodes;
private ItemNode first;
private ItemNode last;
public ItemsList() {
this.first = null;
this.last = null;
this.nbNodes = 0;
}
public int size() {
return nbNodes;
}
public boolean empty() {
return first == null;
}
public int append(int item) {
ItemNode node = new ItemNode(item);
if(this.empty())
{
first=node;
last=node;
nbNodes++;
}
else if (member(this.first,node.item))
{
System.out.println("Node already exists ");
}
else
{
last.next=node;
last=node;
nbNodes++;
}
return nbNodes;
}
【问题讨论】:
-
请提供代码的所有部分:
first、last、nbNodes、ItemNode类的声明。也许只是您正在实现的整个具体 LinkedList 类。 -
现在好点了吗?