1.我们可以重新创一个链表用来存储删除后的链表中的数
2.我们可以直接删除这个链表节点,是他的上一个节点指向他的下一个节点
但是方法一是基于有头结点,方法二基于有他的上一个节点,这里他只给了本节点,他让你自己扇自己(就很狠)
3.将这个位置的值换成下一个节点的值,并且让他的下一个next域指向下下一个节点,也就是用本位节点来替换下一位节点,不就是相当于是删除了本节点
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
void deleteNode(struct ListNode* node) {
//题目中的是要删除的节点
struct ListNode* next=node->next;
node->val=node->next->val;
node->next=node->next->next;
free(next);
}