访问单个节点的删除
2015-07-09 09:47
375 查看
题目描述
实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点。给定带删除的节点,请执行删除操作,若该节点为空节点,返回false,否则返回true
Thinking
实现链表的节点删除我们只需知道该节点的前节点然后修改该节点next的指向就可以了。然而根据题目要求我们并无法得知该节点的前节点。所以换一种思路我们只需将val值错位就可以了 只需将该节点的值换成下一结点的值然后删除下一结点、Code
[code]import java.util.*; /* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Remove { public boolean removeNode(ListNode pNode) { // write code here if(pNode==null||pNode.next==null) return false; ListNode p=pNode; // while(p.next!=null){ // p.val=p.next.val; // p=p.next; // } // p=null; ListNode q=pNode.next; p.val=q.val; p.next=q.next; return true; } }
相关文章推荐
- 杭电acm 1236 排名 list排序
- Haskell心得(1) 模式匹配、高阶函数、组合函数
- Linux智能小开关rfkill
- 对话框程序SW_HIDE 和 SW_MINIMIZE 区别
- 使用jquery-mockjax模拟ajax请求做前台测试
- 【CODE】js转换时间格式:将时间转换成自己想要的格式
- 列表页模板 常识
- R语言的帮助使用和图形功能简介
- 怎样知道linux是否安装了mysql
- 新建组
- Android手势操作
- UIWebView用法详解及代码分享
- 2015必看的开源APP源码
- new/malloc 分配二维数组存储空间
- 使用vmware虚拟机快速克隆CentOS
- asp.net 获取进程。。杀到进程
- 升级xcode 一句话解决xcode插件失效问题
- UML时序图(2)
- Java之美[从菜鸟到高手演变]之HashMap、HashTable
- I2C上拉电阻取值问题