LeetCode_copy-list-with-random-pointer

来源:互联网 发布:ae cc2018 for mac 编辑:程序博客网 时间:2024/06/06 01:29
/** * Definition for singly-linked list with a random pointer. * class RandomListNode { *     int label; *     RandomListNode next, random; *     RandomListNode(int x) { this.label = x; } * }; */public class Solution {    public RandomListNode copyRandomList(RandomListNode head) {if(head==null){return null;}        RandomListNode head_copy= new RandomListNode(head.label); RandomListNode head_con=head,head_copy_con=head_copy;while(head_con.next!=null){head_copy_con.next=new RandomListNode(head_con.next.label);head_copy_con=head_copy_con.next;head_con=head_con.next;}head_copy_con.next=null;head_con=head;head_copy_con=head_copy;while(head_con.next!=null){head_copy_con.random=head_con.random;head_copy_con=head_copy_con.next;head_con=head_con.next;}        head_copy_con.random=head_con.random;return head_copy;}}