【问题标题】:Linked List Structure in JavaJava中的链表结构
【发布时间】:2011-07-19 13:53:58
【问题描述】:

我有一个关于循环链表的问题。我的链表对象有两个引用,firstlastlast 引用的下一个节点是first。我想编写一个将节点插入列表末尾的方法。

void insertLast(int k) {
    Node a = new Node(k);

    if (first == null) {
        first = last = a;
    } else {
        last.after = a;
        a.after = first;
    }

    last = a
}

这样的事情可能吗?我是不是搞错了?

【问题讨论】:

  • 如果您最后插入,为什么将您的方法命名为insertFirst
  • 我没有让你做我的作业。这只是一个我想知道的问题。无论如何谢谢。
  • @cane-r 你走在正确的轨道上,只需检查你的 Java 语法就可以了。
  • 只是一些琐碎的选择,但您可以使用first=a; 而不是first=last=a; 来简化代码,因为您总是设置last=a;

标签: java list linked-list


【解决方案1】:

是的。

  • 让当前的最后一个指向新的 (last.setNext(newNode))
  • 让新的指向第一个 (newNode.setNext(first))
  • 将最后一个设置为新节点 (last = newNode)

【讨论】:

  • 这实际上是风格更好的OPs实现:)
  • 好吧,我看到它叫insertFirst并忽略了它..那么问题是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-20
  • 1970-01-01
  • 2019-05-02
相关资源
最近更新 更多