Python实现节点
在某些情况下,无法在连续的内存块中为数据分配内存。 因此,我们在数据元素中记录下一个数据的内存地址;此类结构称为指针。 但是在Python中,我们将它们称为节点。
节点在Python中是处理各种其他数据结构的链表和树的基础。
创建节点
通过实现一个类来创建节点,该类将保存指针和数据元素。在下面的示例中,我们创建一个名为daynames的类来保存工作日的名称。nextval指针被初始化为null和三个节点,并使用如图所示的值进行初始化。
节点e1得nextval指针指向e3,而节点e3得nextval指针指向e2。
class daynames:
def __init__(self,dataval=None):
self.dataval = dataval
self.nextval = None
e1 = daynames('星期一')
e2 = daynames('星期二')
e3 = daynames('星期三')
e1.nextval = e3
e3.nextval = e2
遍历节点元素
我们可以通过创建一个变量并为其分配第一个元素来遍历上面创建的节点的元素。 然后,我们使用while循环和nextval指针打印出所有节点的元素。
thisvalue = e1
while thisvalue:
print(thisvalue.dataval)
thisvalue = thisvalue.nextval
执行上面代码,将依次打印星期一,星期三,星期二。
我们可以通过在链表和树之类的常规数据结构中使用此节点容器来实现适当的方法,从而完成诸如插入和删除之类的其他操作。