题解 | #从单向链表中删除指定值的节点#

从单向链表中删除指定值的节点

https://www.nowcoder.com/practice/f96cd47e812842269058d483a11ced4f

import sys
lst = input().split()  #将输出拆分成列表,各项为字符串
res = []     #初始化结果空列表
n = lst.pop(0)   #列表lst第一个数为链表结果长度,用pop去除lst中的该值同时返回
res.append(lst.pop(0))  #接下来的第一个是第一个节点,加入到res里
for i in range(int(n)-1):  #之后会有n-1个节点组合
    l1 = lst.pop(0)  #前边的是待插入节点
    l2 = lst.pop(0)  #后边的是已存在节点
    res.insert(res.index(l2)+1,l1) #找到已存在节点l2的位置,在该点后边插入待插入节点值l1
res.pop(res.index(lst[-1]))  #最后把lst的最后一个待删除节点去掉即可
print(*(res))  #此时的res为各节点的字符串组合,直接输出即可
##注:本题尽量不把结果初始化为空字符串而后replace的方法,因为一旦节点为多位数的时候,容易在替换时出现未知错误。

全部评论

相关推荐

03-11 18:00
辽宁大学 安卓
这怎么还花钱买上了.....
不愿吃饼的变色龙很感性:没事,我不是目标院校,练花钱的机会都没有
点赞 评论 收藏
分享
程序员小白条:找实习多投就行,但25届现在是春招时间呃呃呃,你想以后参加社招吗
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客企业服务