删除单向链表中间的某个节点,假定你只能访问该节点
1 /* 2 * 在这个问题中你访问不到链表的首节点,只能访问那个待删除节点,其实我们可以这样想 3 * 就是把后继结点的值复制到当前节点,当前节点的下一个地址指向后继结点的下一个地址 4 * 把删除当前节点的问题转化为删除后继结点的问题 5 * 在这里要注意以下,就是如果待删除的是链表的尾节点,则这个问题无解 6 * */ 7 public static boolean deleteNode(Node node) 8 { 9 if(node==null || node.next==null) 10 return false; 11 Node n = node.next; 12 node.data=n.data; 13 node.next=n.next; 14 return true; 15 }
posted on 2014-09-05 11:12 daocaorendeshijie 阅读(210) 评论(0) 编辑 收藏 举报