2016-07-26 21 views
0

私は、挿入ノードの機能を正しく修正する方法を理解するのが本当に苦労しています。私は何のエラーも受けていないが、私はまた、リストを表示していない。Pythonの挿入ノード関数

class Node: 
    def __init__(self, data): 
     self.data = data 
     self.next = None 

class Solution: 
    def display(self, head): 
     current = head 
     while current: 
      print current.data, 
      current = current.next 

    def insert(self, head, data): 
     self.head = head 
     new_node = Node(data) 
     if self.head is None: 
      self.head = new_node 
     else: 
      new_node.next = self.head 
      self.head = new_node 

mylist = Solution() 
T = int(input()) 
head = None 
for i in range(T): 
    data = int(input()) 
    head = mylist.insert(head, data)  
mylist.display(head) 
+0

をしたいと思い? –

答えて

0

あなたのinsert()は何も返しませんでした。戻り値を代入すると頭はNoneになります。

0

私はuが `while`ループであなたのインデントを修正することができ、これはあなたが

class Node: 
    def __init__(self, data): 
     self.data = data 
     self.next = None 


class Solution: 
    def __init__(self): 
     self.head = None 

    def display(self): 
     current = self.head 
     while current: 
      print current.data, 
      current = current.next 

    def insert(self, data): 
     new_node = Node(data) 
     if self.head is None: 
      self.head = new_node 
     else: 
      new_node.next = self.head 
      self.head = new_node 


mylist = Solution() 
T = int(input()) 
for i in range(T): 
    data = int(input()) 
    mylist.insert(data) 
mylist.display() 
+0

申し訳ありませんが、私はこの課題の性質上、元の投稿では言及しませんでした。クラスソリューションの挿入機能以外のコードの編集にはアクセスできません。 – user2849274

関連する問題