Given a sorted linked list, delete all duplicates such that each element appear only once.
For example,
Given 1->1->2
, return 1->2
.
Given 1->1->2->3->3
, return 1->2->3
.
1 /** 2 * Definition for singly-linked list. 3 * public class ListNode { 4 * int val; 5 * ListNode next; 6 * ListNode(int x) { 7 * val = x; 8 * next = null; 9 * } 10 * } 11 */ 12 public class Solution { 13 public ListNode deleteDuplicates(ListNode head) { 14 15 if(head==null) return head; 16 if(head.next==null) return head; 17 18 ListNode pre=head;//save the pre to delete 19 ListNode cur=head.next; 20 while(cur!=null) 21 { 22 if(cur.val==pre.val) 23 { 24 25 pre.next=cur.next;//删除cur节点 26 cur=cur.next; //处理下一个节点 27 28 29 } 30 else 31 { 32 pre=pre.next; 33 cur=cur.next; 34 35 } 36 37 38 } 39 40 return head; 41 42 43 } 44 }
删除顺序链表中重复的数 (一) leecode
时间: 2024-10-13 15:30:11