题解 | 【模板】链表

【模板】链表

https://www.nowcoder.com/practice/97dc1ac2311046618fd19960041e3c6f

import sys
data=sys.stdin.read().strip().splitlines()
a=[]
for line in data:
     a.append(line.split())
class  ListNode:
    def __init__(self,val=0,next=None):
        self.val=val
        self.next=next
    def index_pre(self,i):
        cur=self
        while cur:
            pre=cur
            cur=cur.next
            if cur==None:return [pre,cur]
            elif cur.val==i:   
                return [pre,cur]
vir=ListNode()
for i in range(1,len(a)):
    l=a[i][0]
    if l=='insert':
        if not vir.next:
            vir.next=ListNode(int(a[i][2]))
        else:
            rt=ListNode(int(a[i][2]))
            r_=vir.index_pre(int(a[i][1]))
            r_[0].next=rt
            rt.next=r_[1]
    elif l=='delete':
        rt2=vir.index_pre(int(a[i][1]))
        if rt2[1]:
            rt2[0].next=rt2[1].next

cur=vir.next
if cur==None:print('NULL')
else:
    while cur:
        print(cur.val,end=' ')
        cur=cur.next







全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务