数据结构:链表(四)
单链表的实现
1、add(item) 链表头部添加元素
class SingleNode(object): """单链表的结点""" def __init__(self,item): self.item=item self._head=None class SingleLinkList(object): """单链表""" def __init__(self): self._head = None def add(self,item): node=SingleNode(item) #生成一个新的节点 node.next=self._head #先将node.next指向之前的头节点 self._head=node #头节点指向node
2、append(item) 链表尾部添加元素
class SingleLinkList(object): """单链表""" def __init__(self): self._head = None def append(self,item): node=SingleNode(item) #生成一个新节点 if self._head==None: #当链表为空,只要将头节点指向node就可以(也可以使用之前写的 self.is_empty()) self._head=node else: cur=self._head #当链表不为空,循环取到指向None时,再指向node while cur.next!=None: cur=cur.next else: cur.next=node