1、链表定义
# Definition for singly-linked list.
class ListNode(object):
def __init__(self, val=0, next=None):
self.val = val
self.next = next
2、list转为链表
class Solution1:
def initList(self, data):
# 判断是否为空
if len(data) == 0:
return
else:
# 创建头结点
self.head = ListNode(data[0])
# 头结点
r = self.head
# 指针
p = self.head
# 逐个为 data 内的数据创建结点, 建立链表
for i in data[1:]:
node = ListNode(i)
p.next = node
p = p.next
return r
3、打印列表的值
class LinkList:
def __init__(self):
self.head=None
def initList(self, data):
# 创建头结点
self.head = ListNode(data[0])
r=self.head
p = self.head
# 逐个为 data 内的数据创建结点, 建立链表
for i in data[1:]:
node = ListNode(i)
p.next = node
p = p.next
return r
def printlist(self,head):
if head == None: return
node = head
while node != None:
print(node.val,end='')
node = node.next
4、综合使用
if __name__ == "__main__":
test = Solution1()
data1 = [1, 1, 2,3,3]
head = test.initList(data1)
S = Solution()
result = S.deleteDuplicates(head)
l = LinkList()
l.printlist(result)