我想在另一個程序中爲節點創建一個類(它可以作爲一個隊列的系統)到import
。我知道其他程序工作正常,因爲它工作在import
另一種使用相同函數名稱(基於Python常規list
)的隊列中。但是,使用這種隊列類型,我似乎無法使其工作。我敢肯定,我的代碼存在很多問題(因爲我收到了各種各樣的錯誤消息),並且希望我能改變一些內容。我的鏈接列表有什麼問題?
下面是類代碼:
class Node():
def __init__(self, v=None, n=None):
self.item=v
self.next=n
lastnode=__init__
def put(self, v):
Node.lastnode.next=self
self.item=v
self.next=None
Node.lastnode=Node.lastnode.next
def get(self):
if Node.isempty(self):
return None
out=Node.__init__.next
Node.__init__.next=out.next
out.next=None
return ut.item
def isempty(self):
if Node.lastnode==Node.__init__:
return True
else:
return False
的put
功能的作用是把最後一個隊列中的新項目/節點。
get
函數的作用是從隊列中刪除第一個節點,return
其項目。
isempty
函數用來檢查隊列是否爲空。
請給我一些批評。
您的問題屬於上http://codereview.stackexchange.com – martineau
BTW:請記住,內建高度優化 - 如果你想用你的解決方案在實際-life應用程序,使用標準列表,如果您有充分的理由不使用它,請使用python將其原型化,然後爲您的數據結構編寫C擴展。 –
是的,我猜到了,這僅僅是爲了學習語言。 – user3411693