题解 | #从单向链表中删除指定值的节点#
根据大佬代码改的🤣
import java.util.*;
class ListNode{
int val;
ListNode next;
ListNode(int val,ListNode next){
this.val = val;
this.next = next;
}
ListNode(int val){
this.val = val;
}
}
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(sc.hasNext()){
int n = sc.nextInt();
ListNode head = new ListNode(sc.nextInt());
for(int i=0;i<n-1;i++){
int addval = sc.nextInt();
int preval = sc.nextInt();
ListNode p = head;
while(p!=null){
if(p.val == preval){
break;
}
p = p.next;
}
ListNode addNode = new ListNode(addval,p.next);
p.next = addNode;
}
int delval = sc.nextInt();
ListNode p = head;
ListNode next1 = head.next;
while(next1!=null){
if(p.val==delval){
p.next=next1.next;
head=next1;
}
if(next1.val == delval){
p.next=next1.next;break;
}else{
p=p.next;
next1=next1.next;
}
}
p=head;
while(p!=null){
System.out.print(p.val+" ");
p=p.next;
}
System.out.println();
}
}
}
凡岛公司福利 263人发布