【发布时间】:2017-06-19 13:51:04
【问题描述】:
我对这类事情很陌生,我正在尝试找到一个函数,该函数需要两个整数值、起始值以及链中总共应该有多少个节点。节点链中的每个值都是根据前一个值加上前一个值的数字之和计算得出的。例如:
(409, 5)
会生成一串
409
422
430
437
451
我现在的代码:
class Node:
def __init__(self, init_data):
self.data = init_data
self.next = None
def get_data(self):
return self.data
def get_next(self):
return self.next
def set_data(self, new_data):
self.data = new_data
def set_next(self, new_next):
self.next = new_next
def __str__(self):
return str(self.data)
def generate_chain(start, n):
node = Node(start)
current = start
string_of_nodes = str(start)
list_of_nodes = []
print(current)
for digit in string_of_nodes:
list_of_nodes.append(int(digit))
for i in range(n-1):
node.set_next(sum (int(a) for a in list_of_nodes) + int(current))
current += (node.get_data())
print(current)
生成以下输出:
409
818
1227
1636
2045
2454
我想知道是否有人可以帮助我找到我的错误并指导我正确的方式。谢谢。
【问题讨论】:
标签: python python-3.x linked-list nodes