评论

收藏

[C++] 「LeetCode」83. 删除排序链表中的重复元素

编程语言 编程语言 发布于:2021-07-31 16:56 | 阅读数:344 | 评论:0


  • 删除排序链表中的重复元素
    存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。
返回同样按升序排列的结果链表。
示例 1:
DSC0000.png
输入:head = [1,1,2]
输出:[1,2]
示例 2:
DSC0001.png
输入:head = [1,1,2,3,3]
输出:[1,2,3]
题解:
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *   int val;
 *   ListNode next;
 *   ListNode() {}
 *   ListNode(int val) { this.val = val; }
 *   ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }
 */
class Solution {
  public ListNode deleteDuplicates(ListNode head) {
    if(head == null) return null;
    ListNode cur =head;
    while (cur != null && cur.next !=null){
      if(cur.val == cur.next.val){
        cur.next = cur.next.next;
      } else {
        cur = cur.next;
      }
    }
    return head;
  }
}



关注下面的标签,发现更多相似文章