本文共 676 字,大约阅读时间需要 2 分钟。
删除链表中等于给定值 val 的所有节点。
示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5
解题思路:分两种情况
1)要删除的结点不是头节点 a)当前元素不是要删除的元素,向后移动 b)要删除的是当前元素,改变引用指向 2)要删除的节点是头节点 返回空class Solution { public ListNode removeElements(ListNode head, int val) { if(head==null){ return null; } ListNode cur=head.next; ListNode prev=head; while(cur!=null){ if(cur.val==val){ prev.next=cur.next; cur=prev.next; }else{ prev=cur; cur=cur.next; } } if(head.val==val){ head=head.next;; } return head; }}
转载地址:http://jflzi.baihongyu.com/