python设计一个图书管理的简单程序用单链表_需要帮助了解python简单链表程序吗...

下面是一个简单的链表程序,我知道链表在概念上是如何工作的(添加、删除等),但我发现很难从面向对象的设计角度理解它是如何工作的。在

代码:class Node():

def __init__(self,d,n=None):

self.data = d

self.next_node = n

def get_next(self):

return self.next_node

def set_next(self,n):

self.next_node = n

def get_data(self):

return self.data

def set_data(self,d):

self.data = d

class LinkedList():

def __init__(self,r = None):

self.root = r

self.size = 0

def get_size(self):

return self.size

def add(self,d):

new_node = Node(d,self.root)

self.root = new_node

self.size += 1

def get_list(self):

new_pointer = self.root

while new_pointer:

print new_pointer.get_data()

new_pointer = new_pointer.get_next()

def remove(self,d):

this_node = self.root

prev_node = None

while this_node:

if this_node.get_data() == d:

if prev_node:

prev_node.set_next(this_node.get_next())

else:

self.root = this_node

self.size -= 1

return True

else:

prev_node = this_node

this_node = this_node.get_next()

return False

def find(self,d):

this_node = self.root

while this_node:

if this_node.get_data() == d:

return d

else:

this_node = this_node.get_next()

return None

myList = LinkedList()

myList.add(5)

myList.add(8)

myList.add(12)

myList.get_list()

我有几个问题。。在它是如何存储这些值的。据我所知,每个变量可以保存一个值。那么data/next_节点是如何保存多个值的呢。下一个节点是否保存下一个节点的内存位置?

new_pointer.get_data()新的_指针如何访问get_data()?我们不需要有一个实例来访问节点的方法吗?

这个问题可能很傻,但我对面向对象编程还是个新手。如果有人能回答这些问题,或者发布一个外部链接来解决这些问题,那将是非常有帮助的。在

提前谢谢。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值