在一个递增有序的线性表中,有数值相同的元素存在。若存储方式为单链表,设计算法去掉数值相同的元素。
创始人
2024-02-07 06:25:02

算法思想:由于线性表有序,值相同的元素一定在逻辑上相邻,设置两个指针遍历链表,删除值相同的元素即可。

void Del_same(LinkList &L){

LNode *pre=L->next;//设置一个指针指向第一个结点

LNode *q=pre->next;//设置一个指针指向第二个结点

while(q!=NULL){//如果非空继续比较

if(pre->data=q->data)

        p->next=q->next;

        free(q);

        q=pre->next;

//如果元素值相等删除q

else

        p=p->next;

        pre=pre->next;//如果元素值不等依次后移

}

}

相关内容

热门资讯

成都信息工程大学与法国ECAM... 四川经济网讯 (记者 胡敏)12月5日,在第二届中法教育发展论坛期间,成都信息工程大学与ECAM拉萨...
全军21所军校齐聚!军队院校招... (来源:人民海军)为深入推进国防教育普及搭建军校与青年学子精准对接桥梁12月6日由海军参谋部、湖北省...
北京国安是中国足协杯冠军!法比... (来源:上观新闻)12 月 6 日,2025 中国足协杯决赛在苏州奥体中心鸣金收兵,北京国安队依靠中...
上海“出海数字商城”上线,打造... (来源:上观新闻)12月6日,在上海市数据局指导下,上海数据集团与临港集团联合建设的“出海数字商城”...
男子将体力不支女友遗弃山顶,致... 转自:扬子晚报近日,奥地利检方称,一名男子因在攀登格罗斯格洛克纳峰时,将缺乏经验女友独自留在雪山上,...