【问题标题】:java linklist with two data field带有两个数据字段的java链表
【发布时间】:2011-03-07 21:38:27
【问题描述】:

谁能帮我开始,我不知道如何创建一个可以包含两个数据字段的链接列表

为链表类编写 Java 程序。形成链表的节点应包含两个数据字段:1. ID(唯一) 2. 年龄。链表中的所有节点都按年龄递增排序。 对链表执行以下操作。
(一种) 遍历链表并打印所有节点的 ID、Age。
(b) 在保持列表排序的同时向列表中插入一个新节点。
(C) 从给定 ID 的列表中删除一个节点。
(d) 在链表上查询。基本上,有两种类型的查询。一是输入唯一ID,显示对应年龄。另一种是输入年龄,然后显示所有具有该年龄的ID。
(e) 将此链接列表更改为按年龄递减排序的排序列表。 您还应该在程序中至少有 3 个节点的示例上尝试上述操作,并提供执行结果的屏幕截图

【问题讨论】:

  • 向我们展示您的尝试。如果你可以构建一个零数据字段的链表,那么只需将两个数据字段添加到代表列表节点的类中。
  • 显示使用单个字段的实现;我会为你添加第二个。

标签: java class list datafield


【解决方案1】:

您基本上必须使用类型扩展 LinkedList 类,因为您的自定义对象可能类似于 Person

public class PersonList extends LinkedList<Person> {

}

在类中实现查询、删除等方法

【讨论】:

  • 我认为作业的想法是实现一个链表,而不是使用JDK中已经实现的那个。
  • java.util.LinkedList 实际上是不可扩展的。这个想法很糟糕(LinkeList 的 PersonList 子类),也对作业没有帮助。
【解决方案2】:

您应该提供当前的实施尝试。
但是,如果您不理解 LinkedList 的概念,这里是一个抽象:

LinkedList 顾名思义就是一个链接列表,所以为了解释链接列表让我们先回顾一下链接的概念:
一个链接应该具备以下能力:
1)知道下一个链接(参考下一个链接)
2)包含可以在外部检索和设置的数据字段(或您的案例中的字段)

现在知道Link的概念后实现LinkedList就很简单了
将以下内容视为 LinkedList

Link1->Link2->Link3->Link4..

现在,由于每个链接都知道(有对下一个链接的引用)下一个链接 LinkedList 需要知道的就是从哪里开始(第一个链接?)
您现在应该已经注意到 LinkedList 没有大小限制动态数据结构

这些信息应该足以让您入门,尝试实施它,如果您遇到任何问题,请向我们展示代码,我们将尽力为您提供帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-01
    • 2012-10-01
    • 2019-05-02
    • 2015-10-06
    • 1970-01-01
    • 2012-10-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多