题目要求删除单链表的倒数第n个节点,有几种方法可供参考
1.由于单链表的单向特性,想要找到倒数第n个节点,可以先遍历链表求得链表的长度len,然后由len-n可以知道要删除节点的前一个节点所在位置,记为m,然后将m节点的next指针指向要删除节点的后一个节点,即m->next=m->next->next。
2.可以先将链表逆转,逆转后的链表删除顺数第n个节点后,再将链表逆转,即可得到所求链表。
3.利用快慢指针,快指针先走n步,然后同时向后遍历链表,当快指针到达链表尾时(快指针指向节点的next域为空),慢指针指向的节点就是要删除的节点,删除该节点即可得到所求链表。