2024-05-12 23:47:50 发布
网友
在循环的同时做一个单链表? 是这样的:
def make_nodes(n): head_node = Node(0,None) for i in range(1,n): node("i") = Node(i, None) #somehow link them
因此节点将被命名为: 节点1节点2节点3。。。节点9
先谢谢你!在
不,但您可以使用列表:
def make_nodes(n): nodes = [] nodes.append(Node(0,None)) # head node for i in range(1, n): nodes.append(Node(i, None)) nodes[i-1].next = nodes[i] #somehow link them return nodes nodes = make_nodes() head = nodes[0] second = nodes[1] last = nodes[-1]
您也可以使用字典,并使用节点号作为键。但在这种情况下,一份清单似乎更自然。在
但你为什么要这么做?您也可以使用Nodes的Pythonlist,通过列表理解可以轻松地创建节点列表。然后可以使用一个简单的for循环遍历列表:
Node
list
你可以使用字典和/或列表来完成你想要达到的目标。在
但是,如果为了学习目的而尝试测试一些数据结构,那么可以创建一个类节点并对其进行操作。在
class Node(object): __data = None __ref_to_next = None def __init__(self, d): self.set_data(d) def set_data(self, d): self.__data = d def set_ref_to_next(self, r): self.__ref_to_next = r def append_a_node(self, new_node): cnode = self while cnode.__ref_to_next != None: cnode = cnode.__ref_to_next cnode.set_ref_to_next(new_node) def traverse(self): cnode = self while cnode.__ref_to_next != None: print cnode.__data cnode = cnode.__ref_to_next def make_nodes(n): head_node = Node(0) for i in range(1,n): new_node = Node(i) head_node.append_a_node(new_node)
可以使用append函数填充链表模拟。在
不,但您可以使用列表:
您也可以使用字典,并使用节点号作为键。但在这种情况下,一份清单似乎更自然。在
但你为什么要这么做?您也可以使用
^{pr2}$Node
s的Pythonlist
,通过列表理解可以轻松地创建节点列表。然后可以使用一个简单的for循环遍历列表:你可以使用字典和/或列表来完成你想要达到的目标。在
但是,如果为了学习目的而尝试测试一些数据结构,那么可以创建一个类节点并对其进行操作。在
可以使用append函数填充链表模拟。在
相关问题 更多 >
编程相关推荐