Remove all elements from a linked list of integers that have value val.
Example
Given: 1 –> 2 –> 6 –> 3 –> 4 –> 5 –> 6, val = 6
Return: 1 –> 2 –> 3 –> 4 –> 5
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ListNodes {
public int val;
public ListNodes next;
public ListNodes(int x) { val = x; }
public ListNodes(int x,ListNodes nexts) { val = x; next=nexts;}
public ListNodes removeElements(ListNodes head, int val) {
if(head==null)
return head;
while(head!=null&&head.val==val)
{
head=head.next;
}
ListNodes post=null;
ListNodes cur=head;
ListNodes tmp=null;
while(cur!=null)
{
if(cur.val==val)
{
post.next=cur.next;
cur=post.next;
}
else
{
post=cur;
cur=cur.next;
}
}
return head;
}
}
本文介绍如何使用Java实现删除链表中所有值等于指定值的元素的方法,包括链表节点定义、删除逻辑及示例代码。
739

被折叠的 条评论
为什么被折叠?



