在一个递增有序的线性表中,有数值相同的元素存在。若存储方式为单链表,设计算法去掉数值相同的元素。
创始人
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;//如果元素值不等依次后移

}

}

相关内容

热门资讯

嘉实多元动力混合C净值上涨0.... 嘉实多元动力混合型证券投资基金(简称:嘉实多元动力混合C,代码014308)公布12月30日最新净值...
格林新兴产业混合A净值下跌0.... 格林新兴产业混合型证券投资基金(简称:格林新兴产业混合A,代码014327)公布12月30日最新净值...
银华消费主题混合C净值下跌0.... 银华消费主题混合型证券投资基金(简称:银华消费主题混合C,代码014346)公布12月30日最新净值...
银华沪港深增长股票C净值下跌0... 银华沪港深增长股票型证券投资基金(简称:银华沪港深增长股票C,代码014364)公布12月30日最新...
富国中证新华社民族品牌工程ET... 富国中证新华社民族品牌工程交易型开放式指数证券投资基金联接基金(简称:富国中证新华社民族品牌工程ET...