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

待解决

时间:2016-02-10 23:21:19      阅读:368      评论:0      收藏:0      [点我收藏+]

标签:

缺乏头节点时,添加头节点后,以后的对于链表的表示都用这个头节点来表示。

203题:删除一个结点。结点的赋值到底什么含义。。。。。

 public static ListNode removeElements(ListNode head, int val) {
         if(head==null) return head;
            ListNode p=new ListNode(0);
            p.next=head;
            ListNode q=head;
            while(q!=null){
                if(q.val==val){
                    p.next=q.next;
                    q=null;//已经置为null,head却没改变。。。
                    q=p.next;
                }else{
                    p=p.next;
                    q=q.next;
                }
            }
            
            return head;   
        }//不通过,更改为下:通过

public ListNode removeElements(ListNode head, int val) {
        if(head==null) return head;
        ListNode p=new ListNode(0);
        p.next=head;
        ListNode q=head;
        ListNode s=p;
        while(q!=null){
            if(q.val==val){
                p.next=q.next;
                q=null;
                q=p.next;
            }else{
                p=p.next;
                q=q.next;
            }
        }
        
        return s.next;
    }

如下也错

public static ListNode removeElements(ListNode head, int val) {
         ListNode pListNode=new ListNode(0);
         pListNode.next=head;
         ListNode sListNode=head;
         while(head!=null){
             if(head.val==val){
                 pListNode.next=head.next;
                 head=null;
                 head=pListNode.next;
             }else{         
                 pListNode=pListNode.next;
                 head=head.next;
             }
         }
         return sListNode;
                
        }

待解决

标签:

原文地址:http://www.cnblogs.com/litian0605/p/5186161.html

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