다른 프로그램에서 import
으로 노드를위한 클래스를 만들려고합니다. 나는 다른 프로그램이 잘 작동한다는 것을 알고있다. 동일한 함수 이름을 사용하는 다른 유형의 큐를 import
(즉 Pythons regular 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 : 내장 명령이 고도로 최적화되어 기억 - 당신이 진짜 당신의 솔루션을 사용하려는 경우 - 라이프 애플 리케이션, 표준 목록을 사용하고, 당신이 그것을 사용하지 않는 좋은 이유가 있다면, 파이썬에서 프로토 타입을 누른 다음 당신을 위해 C 확장을 작성 데이터 구조. –
그래, 나는이 언어를 배우기위한 것일뿐입니다. – user3411693