私はリンクされたリストクラスを持っており、リンクされたリストからアイテムを削除するクラス関数を作成しようとしています。私のリンクリストが含まれている場合リンクされたリストからアイテムを削除する
例は、:
1
2
3
4
5
を、私は4を削除したい、それが出力:
1
2
3
5
は、ここに私のコードです:
def remove(self,item):
if self.isEmpty():
raise StopIteration("List is empty")
else:
element = self.head
if element.next.item == item:
element.next = element.next.next
self.count-=1
return True
に問題私のコードでは、リンクされたリストで最初に見たアイテムのみを考慮し、一目でそれを削除します。
例:1を削除すると最初の要素なので動作しますが、3を削除すると要素が削除されません。私は、1以外の要素では動作しない原因を逃しているのだろうかと疑問に思っています。
コードに反復はありません。 –
クラス定義の例がありますか?ところで、クラス関数を定義するのではなく、インスタンスメソッドを定義しています。 –