LintCode: 样例 给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1->2->4->5。
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { /* * @param head: a ListNode * @param val: An integer * @return: a ListNode */ public ListNode removeElements(ListNode head, int val) { if(head == null) return head; ListNode p = head, q = head.next; while(q != null) { if(q.val == val) { p.next = q.next; q = q.next; }else{ p = p.next; q = q.next; } } if(head.val == val) head = head.next; return head; } }