码迷,mamicode.com
首页 > 其他好文 > 详细

LintCode之在O(1)时间复杂度删除链表

时间:2017-11-07 18:14:12      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:span   技术分享   logs   ext   for   null   题目   his   delete   

题目描述:

技术分享

 

分析:因为题目要求不能用循环,而且只给了要删除的节点,并没有给链表。所以我无法取得要删除节点的前一个节点,只能在待删除的节点以及下一个节点上做文章。我的思路是:将待删除的节点的下一个节点的值赋给待删除节点,然后让待删除的节点的next指向待删除节点的next的next。

技术分享

我的代码:

 1 /**
 2  * Definition for ListNode.
 3  * public class ListNode {
 4  *     int val;
 5  *     ListNode next;
 6  *     ListNode(int val) {
 7  *         this.val = val;
 8  *         this.next = null;
 9  *     }
10  * }
11  */
12 
13 
14 public class Solution {
15     /*
16      * @param node: the node in the list should be deletedt
17      * @return: nothing
18      */
19     public void deleteNode(ListNode node) {
20         // write your code here
21         if(node == null) {
22             return ;
23         }
24         node.val = node.next.val;
25         node.next = node.next.next;
26     }
27 }

 

LintCode之在O(1)时间复杂度删除链表

标签:span   技术分享   logs   ext   for   null   题目   his   delete   

原文地址:http://www.cnblogs.com/zwxblog/p/7799489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!