从链表中删除一个节点,这个问题可以算的上超经典的一个问题,但是还是有很多问题需要注意。
如题:给定一个链表和一个节点指针,要求从链表中删除该节点。
1,一般的解答思路:我们可以从头到尾遍历该链表找到该指针的前一个节点并将其删除。这个比较简单。
2,我们不需要遍历该链表,我们只需要将该节点后面的值将现在的值覆盖,再将后面的节点删除就可以了。(当然这个方法有一些特殊情况)。
(1)如果该节点后面在没有节点了,这时我们只能将整个链表遍历求解。
(2)如果该链表只有一个节点,那么我们直接删出就可以了。(如果链表有头结点那就可以将上面两条合并)(有时候带一个头结点会带来很多方便,所以我一直都会带一个头结点)。
问题比较简单我就不举例了