Advertisement

数据结构 - 单链表及图

阅读量:

本次依旧涉及两道算法题目,分别为复制单链表以及复制图。对这两道题进行逐一分析,最后将给出一些初步的总结。

题目一 ,要求实现一个单链表(SLL - single linked list)的复制操作,其中每个节点除了包含一个指向后续节点的指针(next)之外,还额外包含一个随机指针(random),该指针可指向链表中的任意节点。

复制代码
 struct ranSLLNode{

    
     char* cValue;
    
     ranSLLNode* pNext;
    
     ranSLLNode* pRandom;
    
     ranSLLNode(): pNext(0), pRandom(0){
    
     cValue = new char[CSIZE];
    
     memset(cValue, 0, CSIZE);
    
     }
    
     ~ranSLLNode(){
    
     delete cValue;
    
     cValue=0;
    
     pNext=0;
    
     pRandom=0;
    
     }
    
 };
    
    
    
    

若为常规单链表结构,处理方式较为直接:只需对原始链表进行一次遍历操作

全部评论 (0)

还没有任何评论哟~