已知存在一个排序链表,删除所有重复数据,保证每个元素只能出现一次。
例如:
已知: 1->1->2
, 返回 1->2
.
已知
1->1->2->3->3
, 返回 1->2->3
.
思路:遍历链表,保存一个中间值,如果和当前的值相等的,不保存,不等,才保存。
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { int value=-100; public ListNode deleteDuplicates(ListNode head) { ListNode temp=new ListNode(-100); ListNode result=temp; while(head!=null){ if(head.val==value){ }else{ temp.next=new ListNode(head.val); value=head.val; temp=temp.next; } head=head.next; } return result.next; } }