leetcode-237-Delete Node in a Linked List
2015-07-16 13:22
555 查看
Delete Node in a Linked List
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 -> 4and you are given the third node
with value
3, the linked list should become
1 -> 2 -> 4after calling your function.
删除链表的一个节点,但只给你需要删除的那个节点。
依次将后一个节点的val值赋给前一个,最后一个节点无用,将倒数第二个节点的next指向NULL,时间复杂度O(n)
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: void deleteNode(ListNode* node) { while (node->next->next) { node->val = node->next->val; node = node->next; } node->val = node->next->val; node->next = NULL; } };
要删除的节点是node
直接将node->next的val值赋给node,然后删除node->next
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: void deleteNode(ListNode* node) { node->val = node->next->val; node->next = node->next->next; } };
相关文章推荐
- LeetCode:Delete Node in a Linked List
- Error: unable to connect to node 'rabbit@devlop-ceilo': nodedown
- Delete Node in a Linked List
- nodejs安装遇到的问题
- 用NodeJS搭建一个内容管理系统(v0.0.1)
- hadoop的namenode无法启动的解决办法
- 开启Node.js的大门
- LeetCode从零单排之零分段——Delete Node in a Linked List(删除链表中的元素)
- 和阿木聊Node.js
- [LeetCode][JavaScript]Delete Node in a Linked List
- LeetCode Delete Node in a Linked List
- nodejs express3.x 与 express4.x 的router区别 与修改方法
- Ubuntu 14.04下hadoop 2.2.0 伪分布环境配置datanode不能启动的解决办法
- 【排错】Failed to replace a bad datanode on the existing pipeline due to no more good ...
- 用MindNode描述了一个小项目思路
- LeetCode#237 Delete Node in a Linked List
- 【LeetCode 237】Delete Node in a Linked List
- 【LeetCode】237. Delete Node in a Linked List
- How to download a file with Node.js?
- Swap Nodes in Pairs