ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Python | Leetcode Python题解之第138题随机链表的复制
[打印本页]
作者:
天津储鑫盛钢材现货供应商
时间:
2024-6-20 19:55
标题:
Python | Leetcode Python题解之第138题随机链表的复制
标题:
题解:
class Solution:
def copyRandomList(self, head: 'Optional[Node]') -> 'Optional[Node]':
allNode=[] # 用一个数组存储所有结点
cur1=head
while cur1:
allNode.append(cur1)
cur1=cur1.next
n=len(allNode)
allRandom=[-1]*n # 用一个数组存储所有节点的random指向的结点下标(下标-1表null)
for i in range(n):
randomNode=allNode[i].random
if not randomNode:
continue
for j in range(n):
if randomNode==allNode[j]:
allRandom[i]=j
break
dummy=Node(0)
cur2=dummy
for i in range(n):# 创建n个新节点存储在原allNode数组中
newnode=Node(allNode[i].val)
allNode[i]=newnode
for i in range(n):# 将n个新节点串联起来
cur2.next=allNode[i]
cur2=cur2.next
if allRandom[i]!=-1:
cur2.random=allNode[allRandom[i]]
return dummy.next
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4