每日一题:删除排序链表中的重复元素Ⅱ(LeetCode 82)
题目
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。
参考代码
- 迭代遍历法不再介绍,下面是递归法
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
if(head == NULL || head->next == NULL){
return head;
}
if(head->val != head->next->val)
{
ListNode *resNode = deleteDuplicates(head->next);
head->next = resNode;
return head;
}
else
{
ListNode *newNode = head->next;
while(newNode != NULL && head->val == newNode->val)
{
newNode = newNode->next;
}
return deleteDuplicates(newNode);
}
}
};
THE END
0
二维码
打赏
海报
每日一题:删除排序链表中的重复元素Ⅱ(LeetCode 82)
题目
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。
参考代码
迭代遍历法不再介绍,下面是……
共有 0 条评论