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

}

}

相关内容

热门资讯

韩国:未收到美国请求 未讨论派... 转自:证券时报人民财讯3月17日电,据韩国纽西斯通讯社17日报道,韩国国防部长官安圭伯表示,尚未收到...
中国东航2月旅客周转量同比上升... (来源:北京商报)北京商报讯(记者 关子辰 牛清妍)3月17日,中国东航公告显示,2026年2月公司...
西班牙批准在90天内释放最多1... 转自:央视当地时间3月17日,西班牙生态转型大臣阿格森在新闻发布会上宣布,为应对霍尔木兹海峡部分关闭...
把牢发展航向 强化实干担当——... 据新华社北京3月17日电 树立和践行正确政绩观学习教育开展以来,国务院国资委结合国资央企实际作出全面...
在互动平台“自问自答”,导致股... 两家涉“脑机接口”的概念股被证监会立案调查的结果出炉。因误导性陈述问题,两家公司均受到深圳证监局处罚...