目录
1、移除链表元素
题目描述:
解题思路: 如果待删除的节点中存在头节点,需要做特殊处理,因此我们采用构建一个虚拟节点的方法进行处理,这样可以方便的处理这种情况。如下图所示:
Code:
class Solution {
public ListNode removeElements(ListNode head, int val) {
ListNode DummyNode = new ListNode(val - 1);
DummyNode.next = head;
ListNode PrevNode = DummyNode;
while (PrevNode.next != null){ //循环遍历PrevNode
if (PrevNode.next.val == val){ // 判断是否有待删除的节点,如果有做更改节点指向的处理。
PrevNode.next = PrevNode.next.next;
}else{
PrevNode = PrevNode.next;
}
}
return DummyNode.next;
}
}