制約
- リンクリストの引数のデータ要素は 常になります 非減少順に。
タスク
A ノード クラスは、エディタであなたのために提供されます。A ノード オブジェクトは、整数データ・フィールド、およびノード・インスタンスのポインタを有し、別のノード(すなわち、リスト内の次のノード)を指します。
removeDuplicatesの 関数は、パラメータとしてリンクリストのノードへのポインタを取り、あなたのエディタで宣言されています。完全 removeDuplicates それはリストから重複ノードを削除し、更新されたリストの先頭を返すように。
注: ポインタは、リストが空であることを示す、ヌルであってもよいです。リストを壊す避けるために削除を実行するときに、あなたのポインタをリセットしてください。
class Node:
def __init__(self,data):
self.data = data
self.next = None
class Solution:
def insert(self,head,data):
p = Node(data)
if head==None:
head=p
elif head.next==None:
head.next=p
else:
start=head
while(start.next!=None):
start=start.next
start.next=p
return head
def display(self,head):
current = head
while current:
print(current.data,end=' ')
current = current.next
def removeDuplicates(self,head):
#Write your code here
tmp=head
while (tmp is not None and tmp.next is not None):
nextnode=tmp.next
if nextnode.data==tmp.data:
tmp.next=nextnode.next
else:
tmp=tmp.next
return head
mylist= Solution()
T=int(input())
head=None
for i in range(T):
data=int(input())
head=mylist.insert(head,data)
head=mylist.removeDuplicates(head)
mylist.display(head);