python面试之python去除链表重复项

python去除链表重复项
class Node:
def init(self,data=None):
self.data=data
self.next=None

class ListNode:
def init(self):
self.head=Node()

def append(self,num):
    node=Node(num)
    cur=self.head
    while cur.next!=None:
        cur=cur.next
    cur.next=node

@property
def lastNode(self):
    cur=self.head
    while cur.next!=None:
        cur=cur.next
    return cur

def print(self):
    cur=self.head
    while cur.next!=None:
        print('data:',cur.data)
        cur=cur.next
    print('end:',cur.data)

def remove(self):
    head=self.head
    cur=head.next.next
    pre=head.next
    while cur!=None:
        if pre.data==cur.data:
            pre.next=cur.next
            cur=cur.next
        else:
            pre=cur
            cur=cur.next

if name == 'main':
list=ListNode()
list.append(1)
list.append(2)
list.append(2)
list.append(3)
list.print()
list.remove()
print('移除重复项')
list.print()

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发
程序员吾非同的头像-程序员知识精选

昵称

取消
昵称表情代码图片