我想复制结构的方法是将两个列表中的一个复制并复制,包括每个节点指向的对象。问题是,这样我发现自己需要求助于复制的对象以创建第二个指针列表(顺序与第一个不同),这显然效率不高。
我找到了解决问题的方法,但它看起来不够优雅,这让我对程序的其他部分进行编程变得有点困难,所以我很想听到更多的想法。
我的想法:
除了需要的信息之外,每个对象还将包含它在第二个列表中的位置。复制结构时,我们还会创建一个对象指针数组。复制将通过抛出第一个列表来完成,并且复制它并且指向每个复制对象的指针将被放置在数组中的位置,在根据第二个列表适合于对象的位置。比使用数组创建第二个列表很容易。
那么,有没有不同优雅有效的方法来解决它?