先说一下手撕链表的代码,然后介绍二叉树。
链表需要定义链表节点和链表链式结构。
直接上代码:
#先定义每个节点的数据结构
class ListNode:
def __init__(self,data):
self.data = data
self.next = None
#定义链式结构
class LinkList:
def __init__(self):
self.head = None
self.bitList = [] #定义数据结构保存节点数据
def linkadd(self,item):
#判断要插入的节点数据结构是否为ListNode
if not isinstance(item,ListNode):
item = ListNode(item)
#判断是否是头结点
if not self.head:
self.head = item
else:
self.head = self.bitList[0]
while True:
if self