feat: 2025-10-27打卡

This commit is contained in:
wu xiangkai
2025-10-27 16:22:33 +08:00
parent 6dc597fa75
commit d910c716e6
10 changed files with 501 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
/*
* @lc app=leetcode id=138 lang=java
*
* [138] Copy List with Random Pointer
*/
// @lc code=start
/*
// Definition for a Node.
class Node {
int val;
Node next;
Node random;
public Node(int val) {
this.val = val;
this.next = null;
this.random = null;
}
}
*/
class Solution {
public Node copyRandomList(Node head) {
if(head == null) {
return null;
}
Map<Node, Node> ref = new HashMap<>();
Node cur = head;
while(cur != null) {
Node cp = new Node(cur.val);
ref.put(cur, cp);
cur = cur.next;
}
cur = head;
while(cur != null) {
Node nd = ref.get(cur);
nd.next = ref.get(cur.next);
nd.random = ref.get(cur.random);
cur = cur.next;
}
return ref.get(head);
}
}
// @lc code=end