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

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

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

import java.util.*;
/**
	1.首先对链表进行检测,如果为空,直接返回空;并设置好替代head遍历的节点
	2.在循环中当前节点和当前节点的下一个节点不可以为null,由于是有序链表,我们只需要在每次循环中判断当前节点的值是否与next节点的值相同,若相同则当前节点的下一个节点则会变为下下节点,若不相同,指针向后移动一位即可
*/
public 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;//返回该队列的头节点,即可按顺序找到整个不重复链表
    }
}

#链表类型#
全部评论

相关推荐

积极的小学生不要香菜:你才沟通多少,没500不要说难
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务