题解 | #从单向链表中删除指定值的节点#
从单向链表中删除指定值的节点
https://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); scanner.useDelimiter("\n"); while (scanner.hasNext()) { String P = scanner.next(); String[] S = P.split(" "); String delete = S[S.length-1]; String length = S[0]; StringBuilder head = new StringBuilder(" " + S[1] + " "); int xia = 3; while (xia<S.length-1) { String c = S[xia]; String d = S[xia-1]; int index = head.indexOf(" "+c+" "); if (index==-1) head.append(d+" "); else { head.insert(index+c.length()+2, d+" "); } xia+=2; } String s = head.toString().replaceAll(" " + delete + " ", " "); System.out.println(s.charAt(0)==' '?s.substring(1):s); } } }