【问题标题】:Doubly Linked List in java implementationjava实现中的双向链表
【发布时间】:2016-10-08 19:25:24
【问题描述】:

我试图找到我的理解并开始编写我的作业。我们被要求制作一个得分游戏的程序,以降序设置(字符串名称,整数得分)。我们被限制为双链表,节点数据包含名称和分数,我们要做的实现是按降序存储它们,添加节点,删除节点,获取第 i 个位置的节点。我现在在想的是,将名称和分数作为 HashMap 是一个好主意吗?我能以一种有效的方式实现吗?如果不是 HashMap 如何将名称和分数存储在一个节点中并进行实现?

【问题讨论】:

    标签: java nodes doubly-linked-list


    【解决方案1】:

    如何在一个节点中存储名称和分数...

    class Node {
        public final String name;
        public final int score;
    
        public Node(String name, int score) {
            this.name = name;
            this.score = score;
        }
    }
    

    当然,如果您想在双向链表中将 Node 对象彼此链接起来,您可能还想添加一些其他字段和方法。

    【讨论】:

    • 更好的是,抽象出 Node 的概念,并使节点具有一个泛型类型,其中该类型是具有namescore 两个字段的某个对象。您将添加一个接受泛型类型对象的构造函数。例如。 public class Node<T>{ .... }
    • @LucasCrawford,当然,但是 OP 正在寻找关于数据结构类介绍的作业帮助。使用泛型是一种更复杂的解决方案,但更复杂并不总是一种改进。
    • 很公平,这就是我留下评论而不是答案的原因:p
    • @jameslarge 谢谢詹姆斯。但是不知道如何根据分数显示节点的降序,我需要显示分数和名称,它们是如何连接的?当然,如果我想返回位置 2 的值,那么名称和分数将如何返回?尽管我已经将本章中的大量资源阅读了 3 遍以上,但我仍然感到很失落。感谢您的帮助。
    • @DoeJ,这个问题超出了stackoverflow的范围。根据该小组的章程,我们可以回答诸如“为什么我会收到此错误消息...当我尝试编译此方法...?”之类的问题。或者“为什么这个方法......当我用这个字符串调用它时会抛出 NullPointerException......?”,但我们不能教你 Java,也不能教你如何编写代码,听起来比如,是你现在需要帮助的地方。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-18
    • 2011-06-03
    • 2018-03-14
    • 2017-06-10
    • 2015-09-30
    • 2015-05-16
    相关资源
    最近更新 更多