题目

给定一个单链表中的表头和一个等待被删除的节点(非表头或表尾)。请在在O(1)时间复杂度删除该链表节点。并在删除该节点后,返回表头。

思路

因为O(1)内删除所以 不能从头节点去遍历找他的前驱节点

因为给的是待删除节点, 所以如果删除下一个节点可以在o(1)复杂度完成

所以 把当前节点覆盖成下一个节点

删除下一个节点即可

C++代码

void deleteNode(ListNode *node) {
// write your code here
ListNode* p = node->next;
node->val = p->val;
node->next = p->next;
delete p;
}

  

最新文章

  1. 4-iscsi
  2. IT培训行业揭秘(四)
  3. 使用intellij的svn时提示出错: Can't use Subversion command line client: svn.Errors found while svn working copies detection.
  4. 修改weblogic PermGen
  5. AXIOM解析XML 详细原理
  6. Android从入门到精通pdf+书源代码
  7. [Script]EBS里查看模块的版本、文件的版本信息【Z】
  8. Spring3.0 入门进阶(1):从配置文件装载Bean
  9. Django编写RESTful API(一):序列化
  10. DirectX:在graph自动连线中加入自定义filter(graph中遍历filter)
  11. Jvm 内存模型 —— GC
  12. 读 vue 源码一 (为什么this.message能够访问data里面的message)
  13. idea中使用github
  14. CSS的引入方式及CSS选择器
  15. HTML框架、列表、表格
  16. Shuffle(洗牌)
  17. jQuery在线引用地址(全)
  18. 【洛谷P2420】让我们异或吧
  19. MySQL子查询的优化
  20. Linux中断 - High level irq event handler

热门文章

  1. 【bzoj 4671】 异或图
  2. MySQL模拟Oracle序列使用
  3. HBase Ambari
  4. CodeForces - 1087D
  5. day66作业
  6. Ionic 发布Release 版本
  7. webpack 4.0尝鲜
  8. 深入浅出 Java Concurrency (7): 锁机制 part 2 AQS[转]
  9. Jeecms之查询实现
  10. win7安装mysql8提示one more product requirements have not been satisified