leetcode 237 --Delete Node in a Linked List 链表 删除节点

来源:互联网 发布:冬天敬酒服穿什么知乎 编辑:程序博客网 时间:2024/04/20 02:02

Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.

Supposed the linked list is 1 -> 2 -> 3 -> 4 and you are given the third node with value 3, the linked list should become 1 -> 2 -> 4 after calling your function.

c++

class Solution {public:    void deleteNode(ListNode* node) {    struct ListNode* temp;    temp=node->next;    node->val=temp->val;    node->next=temp->next;    free(temp);    }};

java

/** * Definition for singly-linked list. * public class ListNode { *     int val; *     ListNode next; *     ListNode(int x) { val = x; } * } */public class Solution {    public void deleteNode(ListNode node) {       if(node==null) return;       if(node.next==null){           node=null;           return;       }       node.val=node.next.val;       node.next=node.next.next;    }}
1 0
原创粉丝点击