坚持就是成功!
83.删除排序链表中的重复元素
给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表
思路:思路跟数组删除重复元素很像,只是链表的操作方式跟数组不太一样
定义两个指针
快指针每找到一个与慢指针不一样的节点
就让慢指针指向这个快指针指着的节点
var deleteDuplicates = function(head) {
let fast = head;
let slow = head;
while(fast !== null){
if(fast.val !== slow.val){
slow.next = fast;
slow = slow.next;
}
fast =fast.next;
//fast都到头,没找到下一个与slow不同的节点,就需要手动断开一下链表
if(fast === null){
slow.next =null;
}
}
return head;
};