Skip to content

Latest commit

 

History

History
51 lines (34 loc) · 1.13 KB

005链表.md

File metadata and controls

51 lines (34 loc) · 1.13 KB

实现链表数据结构

什么是链表

链表是常用的数据机构之一,其种类也非常多,包括单向链表、双向链表等。这里会使用Python实现简单或通用的链表数据结构。

如何实现单向链表

首先是定义链表的Node,我们设计链表除了自己的数据外,还包含一个next对象。

class Node(object):

  def __init__(self, data, next=None):
    self.data = data
    self.next = next


node = Node("node1")

然后我们就可以实现List类,主要是包含head的节点,顺便实现遍历的方法。

class List(object):

  def __init__(self, head=None):
    self.head = head

  def add_node(self, node, data):
     if node != None:
       new_node = Node(data)
       node.next = new_node
       return new_node

  def travel(self, node):
    if node != None:
      print(node.data)
      if node.next != None:
        self.travel(node.next)

head = Node("node1")
list = List(head)
node2 = list.add_node(head, "node2")
node3 = list.add_node(node2, "node3")
list.travel(head)

这是本章内容,希望对你有所帮助。进入下一章