给定单向链表的一个节点指针,定义一个函数在O(1)时间删除该结点。假设链表一定存在,并且该节点一定不是尾节点。

/**

* 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) {

auto p = node->next;

node->val = p->val;

node->next = p->next;

// 这两步的作用就是将 *(node->next) 赋值给 *node,所以可以合并成一条语句:

// *node = *(node->next);

delete p;

}

};

相关推荐
kedvellek1 小时前
Linux 内核链表宏的详细解释
linux·运维·链表
lybugproducer2 小时前
浅谈 Redis 数据类型
java·数据库·redis·后端·链表·缓存
与己斗其乐无穷4 小时前
数据结构(2)线性表-顺序表
数据结构
周Echo周5 小时前
20、map和set、unordered_map、un_ordered_set的复现
c语言·开发语言·数据结构·c++·算法·leetcode·list
小青龙emmm5 小时前
数据结构(一) 绪论
数据结构
矿渣渣5 小时前
AFFS2 的 `yaffs_ext_tags` 数据结构详解
数据结构·算法·文件系统·yaffs2
真的想上岸啊6 小时前
c语言第一个小游戏:贪吃蛇小游戏06
c语言·算法·链表
chenyuhao20247 小时前
链表的面试题4之合并有序链表
数据结构·链表·面试·c#
水水沝淼㵘8 小时前
嵌入式开发学习日志(数据结构--顺序结构单链表)Day19
linux·服务器·c语言·数据结构·学习·算法·排序算法
莹莹学编程—成长记8 小时前
list基础用法
数据结构·list