LintCode Python 简单级题目 112.删除链表中的重复元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LintCode Python 简单级题目 112.删除链表中的重复元素相关的知识,希望对你有一定的参考价值。
题目描述:
给定一个排序链表,删除所有重复的元素每个元素只留下一个。
样例
给出 1->1->2->null
,返回 1->2->null
给出 1->1->2->3->3->null
,返回 1->2->3->null
题目分析:
给定一个排序链表,删除所有重复的元素每个元素只留下一个。
源码:
""" Definition of ListNode class ListNode(object): def __init__(self, val, next=None): self.val = val self.next = next """ class Solution: """ @param head: A ListNode @return: A ListNode """ def deleteDuplicates(self, head): # write your code here if head is None: return None pre = head cur = pre fol = pre.next while fol.next is not None: # 一直找到第一个与pre值不等的fol,删除中间所有重复元素 if pre.val == fol.val: fol = fol.next else: pre.next = fol pre = fol fol = pre.next # 检测末尾是否相等 if pre.val == fol.val: pre.next = fol.next else: pre.next = fol return cur
以上是关于LintCode Python 简单级题目 112.删除链表中的重复元素的主要内容,如果未能解决你的问题,请参考以下文章
LintCode Python 简单级题目 373.奇偶分割数组