合并链接列表-无法使用python
有人能告诉我下面的代码有什么问题吗合并链接列表-无法使用python,python,linked-list,Python,Linked List,有人能告诉我下面的代码有什么问题吗 class Node(object): def __init__(self, data=None, next_node=None): self.data = data self.next = next_node class Solution: def MergeLists(self,headA, headB): current = Node() temp = current
class Node(object):
def __init__(self, data=None, next_node=None):
self.data = data
self.next = next_node
class Solution:
def MergeLists(self,headA, headB):
current = Node()
temp = current
while not (headA is None and headB is None ):
if(headA.data <= headB.data) :
temp.next = headA
headA = headA.next
else:
temp.next = headB
headB = headB.next
temp = temp.next
if headA is None:
temp.next = headB
if headB is None:
temp.next = headA
return current.next
类节点(对象):
def uu init uu(self,data=None,next_node=None):
self.data=数据
self.next=下一个节点
类解决方案:
def合并列表(自身、头A、头B):
当前=节点()
温度=电流
而不是(头A为无,头B为无):
如果(headA.data在循环中每次只修改temp变量,您可以尝试
if(headA.data<=headB.data):
temp = headA
headA = headA->next
else:
temp = headB
headB = headB->next
while not (headA is None and headB is None ):
if(headA.data <= headB.data) :
temp->next = headA
headA = headA.next
else:
temp->next = headB
headB = headB.next
if(headA.datanext
其他:
温度=头B
headB=headB->next
而不是(头A为无,头B为无):
如果(headA.data next=headA
下一个
其他:
温度->下一步=头B
headB=headB.next
在循环中,每次仅修改temp变量,您可以尝试
if(headA.data<=headB.data):
temp = headA
headA = headA->next
else:
temp = headB
headB = headB->next
while not (headA is None and headB is None ):
if(headA.data <= headB.data) :
temp->next = headA
headA = headA.next
else:
temp->next = headB
headB = headB.next
if(headA.datanext
其他:
温度=头B
headB=headB->next
而不是(头A为无,头B为无):
如果(headA.data next=headA
下一个
其他:
温度->下一步=头B
headB=headB.next
你希望它做什么,你的问题是什么?我没有用Python编写代码,但我将你的代码应用到了两个列表的简单情况,每个列表都只有节点,它完全失败了。代码无法合并两个列表。它显示编译时错误。但我不明白为什么它显示错误。你希望它做什么,你的问题是什么m?我不使用Python编写代码,但我将您的代码应用于两个列表的简单情况,每个列表都只有节点,并且完全失败。代码无法合并两个列表。它显示编译时错误。但我不明白为什么它显示错误。是的。我理解它,但我仍然得到编译时错误。不理解语法的错误.MergeLists([1,2,3],[4,6,7,0])我试图这样触发以进行检查,但失败的原因是:类节点(对象),A=MergeLists([1,2,3],[4,6,7,0])类型错误:MergeLists()只接受3个参数(给定2个),看起来您正在使用在线代码判断(例如leetcode?)。如果尝试调用MergeLists,请尝试self.MergeLists(A,b)
()
从解决方案的实例中调用。如果从外部调用,则需要解决方案的实例,例如s=Solution()
。然后调用s.MergeLists(a,b)
。另外,看起来您正试图将Python列表传递给MergeLists()
,但是MergeLists()
需要两个节点
对象。是的。我理解它,但仍然出现编译时错误。不理解语法有什么问题。合并列表([1,2,3],[4,6,7,0])我试图像这样触发检查,但它没有说:类节点(对象),A=MergeLists([1,2,3],[4,6,7,0])类型错误:合并列表()仅接受3个参数(2个给定参数)看起来您正在使用在线代码判断(例如leetcode?)。如果试图从解决方案的实例中调用MergeLists()
,请尝试self.MergeLists(a,b)
。如果在外部调用,则需要解决方案的实例,例如s=Solution()
。然后调用s.MergeLists(a,b)
。看起来您正试图将Python列表传递给MergeLists()
,但是MergeLists()
需要两个节点
对象。