Keep Learning

永远年轻,永远热泪盈眶

LeetCode 83. Remove Duplicates from Sorted List

问题描述

  • 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.
  • 地址

问题分析

  • 只保留重复中的第一个即可

代码实现

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public ListNode deleteDuplicates(ListNode head) {
        if (head == null || head.next == null) {
            return head;
        }
        ListNode preNode = head;
        ListNode curNode = null;
        while (preNode != null) {
            curNode = preNode.next;
            while (curNode != null && curNode.val == preNode.val){
                curNode = curNode.next;
            }
            preNode.next = curNode;
            preNode = curNode;
        }
        return head;
    }
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zjxxyz123/article/details/79981103
文章标签: LeetCode 链表
个人分类: LeetCode
上一篇LeetCode 82. Remove Duplicates from Sorted List II
下一篇LeetCode 21. Merge Two Sorted Lists
想对作者说点什么? 我来说一句

Java算法刷题带注释Leetcode

2017年06月19日 142KB 下载

leetcode C语言全解

2018年04月19日 1.06MB 下载

List.removeAll() 方法的性能效率

2013年06月08日 2KB 下载

dlcv_remove_dups_from_list_demo.py例子

2018年01月28日 308B 下载

listremove实现结构体成员的删除

2016年11月25日 19.37MB 下载

没有更多推荐了,返回首页

关闭
关闭