请有人将我的链表放到下面工作吗?有一个问题

时间:2014-02-17 20:37:50

标签: python-2.7

class node:
    def __init__(self):   
        self.value=None
        self.pointer=None

    def setvalue(self,x):
        self.value=x
    def setpointer(self,node):
        self.pointer=node

    def show(self):
        print self.nodes
        print self.value

class linkedlist:
    def __init__(self):
        self.nodes=[]

    def addnode(self,nodevalue):
        newnode=node()
        newnode.setvalue(nodevalue)
        self.nodes[-1].setpointer(newnode)

    def removenode(self,nodeposition):
        if nodeposition==0:
            self.nodes[1:]
        else:
            self.nodes[0:nodepostion:1]+self.nodes[(nodespostion+1):]

item=linkedlist()
item.addnode(2)

1 个答案:

答案 0 :(得分:0)

您不必使用此实现,python列表更容易。

尝试像创建linkedlist.nodes一样创建列表

self.nodes=[]

并通过

添加
nodes.append(nodevalue)

当我执行您的代码时,此行中有一个例外

self.nodes[-1].setpointer(newnode)

列表在负指数处没有值。

有关列表的更多信息,请参阅tutorials point - python lists