83.删除排序链表中的重复元素
题目:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
示例 1:
输入: 1->1->2
输出: 1->2
思路:先判断头结点和其下一个结点是否为空,为空则返回头结点While循环为当前结点和其下一个结点不为空,两者值相同则删,不同指针后移
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head)
{
if(!head || !head->next)
{
return head;
}
ListNode * p = head;
while(p->next!=NULL && p != NULL)
{
if(p->val == p->next->val)
{
p->next = p->next->next;
}
else
{
p = p->next;
}
}
return head;
}
};
这篇博客介绍了如何解决 LeetCode 中的一个链表题目,即删除排序链表中的重复元素。通过遍历链表并比较当前节点与下一个节点的值,当值相同时删除下一个节点,确保链表中每个元素只出现一次。提供的 C++ 解决方案实现了这一逻辑。
309

被折叠的 条评论
为什么被折叠?



