集合的合併(用單鏈表表示)

/**
 * 思路:
 * 把B表中的每個元素取出來,在A表中做一次定位查找,如果它不在A表中,則將它插入,否則就不插入
 *
 */
void mergelist(lklist &la,lklist&lb)
{
    ra = la;
    while(ra->next != NULL)
        ra = ra->next;
    pb = lb->next;
    while(pb != NULL)
    {
        pa = la->next;
        while(pa != ra->next && pa->data !=pb->data)
        {
            pa = pa->next;
        }
        if(pa == ra->next) 
        {
            q = pb->next;
            pb->next = ra->next;
            ra->next = pb;pb = q;
        }
        else
            pb = pb->next;
    }
    delete lb;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章