【问题标题】:Link Node the Beginning of a Linked List链接节点链接列表的开头
【发布时间】:2016-05-03 21:33:30
【问题描述】:

我有两个链接列表:killring 和墓地。当一个节点从 killring 中被“杀死”时,它会被添加到第二个链表中,即墓地。每次我向墓地添加一个新节点时,我都需要将此元素放在此链表的开头。我不知道如何解决这个问题。非常感谢概念或代码响应!以下是我目前所拥有的:

public void kill(String name){
    AssassinNode victim = killring; 
    AssassinNode killer = killring; 
    if (gameOver() == true || killRingContains(name) == false) { // Check if game is over OR list contains name 
        throw new IllegalArgumentException("Game Over!"); 
    }
    while (killRingContains(name) == true) { // implements killRingContains to match targets
        killer = victim; // place the killer in the victim's place
        victim.next.player = name; // gets the victims name in list 
        graveyard = victim.next; // add the victim to the graveyard; 

        ..... // add victim to the beginning of graveyard   

    }
} // End of kill()

【问题讨论】:

  • 为什么不直接使用 LinkedList 并调用 addFirst?
  • @Trey 我假设他正在使用他自己的链表版本并想知道如何合并该方法
  • 该程序基于规范,所以我有:private AssassinNode killring;和私人刺客节点墓地; - AssassinNode 是一个私有静态类。
  • @MitchWeaver 那么它是Inserting Node at the beginning of a linked list的副本
  • 如果what I have already posted 没有回答您的问题,那么我们不知道您实际在问什么。

标签: java list linked-list


【解决方案1】:
victim.next = graveyard; 

[新受害者] --> [老受害者] --> [老受害者]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-28
    • 2018-04-05
    相关资源
    最近更新 更多