リンクリスト:リンクリスト全体の先頭を指定せずに、単一のリンクリストのノードを削除します

 

問題の説明:

int型のノード値を含む単一リンクリストがあります。リンクリストのノードが指定されているが、リンクリスト全体のヘッドノードが指定されていない場合は、リンクリストのノードを削除します。

 

アルゴリズムの実装:

クラスNode { 

public int value;
次のパブリックノード。

public Node(int value){
this.value = value;
}

}

public void removeWiredNode(Node node){ 

if(node == null){
return;
}

ノード次= node.next。
if(next == null){
throw new RuntimeException( "ca n't remove last node");
}

node.value = next.value;
node.next = next.next;
}

 

アルゴリズム分析:

1.厳密に言うと、前駆ノードが見つからないため削除できません。

2.問題を厳密に制限する方法ではなく、削除の実現可能性を検討し、解決策に含まれる特殊なケースを提供します。

3.終了ノードを削除できないというプロンプトを出し、非終了ノードのノード値を置き換えます。

 

おすすめ

転載: www.cnblogs.com/heibingtai/p/12682507.html