注意:本题给定的节点即不是头节点也不是尾节点,请你实现删除
比如:1—2---3—4---5—6,给你节点5,那么应该得到:1—2---3—4---6
本题的难点在于无法直接从头或者从尾遍历链表,但是实际上你可以从给定的节点开始遍历到最后,那么就能找到尾节点,之后再将链表反转,然后就可以得到头节点,那么从头节点删除指定节点的方式相信你已经非常熟悉了。。
当然,本题我采用另一种取巧的方式实现,两行代码搞定。
public void deleteNode(ListNode node) {
node.val = node.next.val;
node.next = node.next.next;
}