在O(1)时间复杂度删除链表节点
2016-07-08 21:32
411 查看
题目
给定一个单链表中的一个等待被删除的节点(非表头或表尾)。请在在O(1)时间复杂度删除该链表节点。样例
给定 1->2->3->4,和节点 3,删除 3 之后,链表应该变为 1->2->4。
解题
通过更改结点值进行删除/** * Definition for ListNode. * public class ListNode { * int val; * ListNode next; * ListNode(int val) { * this.val = val; * this.next = null; * } * } */ public class Solution { /** * @param node: the node in the list should be deleted * @return: nothing */ public void deleteNode(ListNode node) { // write your code here if(node==null) return; node.val = node.next.val; node.next = node.next.next; } }
相关文章推荐
- mysqldump原理2
- 安卓事件处理机制之回调机制
- 用NDK编译FFmpeg时遇到的问题
- jquery获取内容
- CSS3 box-orient box-direction box-align box-flex box-pack
- Scala学习笔记
- (巩固基础篇)排序算法:①插入排序②希尔排序③冒泡排序④选择排序⑤快速排序
- [Leetcode]121. Best Time to Buy and Sell Stock
- Hbase启动,警告Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m;
- Codeforces Round #336 (Div. 2) B 暴力
- Web 基础学习之 JS ,循环练习
- 链表倒数第n个节点
- 用MyEclipse10.0远程连接Mysql数据库服务器
- jQuery 架构分析
- UOJ #118. 【UR #8】赴京赶考
- C语言学习笔记_6编译预处理
- 对RadioGroup中的RadioButton设置颜色选择器
- TCP超时与重传
- JSONP(跨域请求) —— 一种非官方跨域数据交互协议
- MySQL Explain详解(转)