题解 | #删除有序链表中重复的元素-I#

删除有序链表中重复的元素-I

https://www.nowcoder.com/practice/c087914fae584da886a0091e877f2c79

/**
 * @author Lu.F
 * @version 1.0
 * @date 2022/10/10 11:05
 */
public class Solution1 {

    /**
     * 思路二:
     * 有序链表,相同值在一起,跳过指向下一个指针
     * @param head ListNode类
     * @return ListNode类
     */
    public ListNode deleteDuplicates1 (ListNode head) {
        // write code here
        // 判空
        if(head == null){
            return null;
        }
        ListNode p = head;
        while (p.next != null){
            // 如果p的值等于p的下个节点值则跳过
            /*while (p.val == p.next.val){
                p.next = p.next.next;
                if (p.next == null){
                    break;
                }
            }
            // 耗时:21ms
            */
            if (p.val == p.next.val){
                p.next = p.next.next;
            }else {
                p = p.next;
            }
            // 耗时:20ms
        }

        return head;
    }

}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务