zoukankan      html  css  js  c++  java
  • 线性表几个基本算法 分类: 编程 20130319 09:26 171人阅读 评论(0) 收藏

    构造A,B两元素的并(删B表补A表)

    void union(List &La, List &Lb)
    {
    La_len = ListLength(La);
    while(!ListEmpty(Lb)){
    List(Delete,1,e);
    if(!LocateELem(La,e))
    ListInsert(La,++La_len,e)
    }
    Destroy(Lb)
    }


    非纯集合B化为纯集合A(本质上同上算法一样)

    void purge(List &La, List &Lb)
    {
    InitList(La);
    La_len = 0;
    while(!ListEmpty(Lb)){
    Delete(Lb,1,e);
    if(!LocateElem(La,e)ListInsert(La,++La_len,e));
    }
    DestroyList(Lb);
    }


    判断A,B两集合相等(构造表List Lc = List Lb, 删相同元素,最后Lc为空则La ,Lb相等)

    bool isequal(List La, List Lb)
    {
    La_len = ListLength(La);
    Lb_len = ListLength(Lb);
    if(La_len != Lb_len)
    return FALSE;
    else{
    InitList(Lc);
    for(k=1; k<=La_len; k++)
    GetElem(La,k,e);
       ListInsert(Lc,k,e);
    }
    found = TRUE;
    for(k=1; k<=Lb_len,found; k++){
    GetElem(Lb,k,e);
    i=(Locate(Lc,e));
    if(i==0)
    found = FALSE;
    else
    ListDelete(Lc,i,e);
    }
    if(found && ListEmpty(Lc))
    return TURE;
    else 
    return FALSE;

    DestroyList(Lc)

           }

    }

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    HDU4529 郑厂长系列故事——N骑士问题 —— 状压DP
    POJ1185 炮兵阵地 —— 状压DP
    BZOJ1415 聪聪和可可 —— 期望 记忆化搜索
    TopCoder SRM420 Div1 RedIsGood —— 期望
    LightOJ
    LightOJ
    后缀数组小结
    URAL
    POJ3581 Sequence —— 后缀数组
    hdu 5269 ZYB loves Xor I
  • 原文地址:https://www.cnblogs.com/learnordie/p/4657029.html
Copyright © 2011-2022 走看看