Delete Node in a Linked List
2017-04-11 09:10
253 查看
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.
直接将后一个数据复制到前面。
方法1: 这个实现方式较为繁琐。
方法2:简便实现方式,直接复制整体即可。
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.
直接将后一个数据复制到前面。
方法1: 这个实现方式较为繁琐。
class Solution { public: void deleteNode(ListNode* node) { if(node==NULL) return; while(node->next!=NULL){ node->val = node ->next ->val; if(node ->next ->next == NULL){ free(node->next); node->next = NULL; break; } else node = node->next; } return ; } };
方法2:简便实现方式,直接复制整体即可。
class Solution { public: void deleteNode(ListNode* node) { *node = *node->next; } };
相关文章推荐
- 237. Delete Node in a Linked List
- 【leetcode】237. Delete Node in a Linked List
- Leetcode237:Delete Node in a Linked List
- LeetCode 237. Delete Node in a Linked List
- 237. Delete Node in a Linked List
- 237.[LeetCode]Delete Node in Linked List
- leetcode 237. Delete Node in a Linked List
- LeetCode 237. Delete Node in a Linked List
- LeetCode:237. Delete Node in a Linked List
- LeetCode编程练习 - Delete Node in a Linked List学习心得
- LeetCode Delete Node in a Linked List (删除链表中的元素)
- LeetCode------Delete Node in a Linked List
- LeeCode-Delete Node in a Linked List
- LeetCode OJ 之 Delete Node in a Linked List (删除链表中的结点)
- LC-Delete Node in a Linked List
- 237. Delete Node in a Linked List
- Delete Node in a Linked List
- Delete Node in a Linked List ---LeetCode
- [Leetcode]237. Delete Node in a Linked List
- 237. Delete Node in a Linked List