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

}

}

相关内容

热门资讯

杭可科技取得锂电池充放机构相关... 6月13日消息,国家知识产权局信息显示,浙江杭可科技股份有限公司申请一项名为“一种可换型的锂电池充放...
固德威申请光伏曲线扫描相关专利... 6月13日消息,国家知识产权局信息显示,固德威技术股份有限公司申请一项名为“一种光伏电流电压曲线扫描...
天能股份申请铅蓄电池铅膏相关专... 6月13日消息,国家知识产权局信息显示,天能电池集团股份有限公司申请一项名为“一种铅蓄电池正极铅膏及...
上海电气风电申请风电混塔管片相... 6月13日消息,国家知识产权局信息显示,上海电气风电集团股份有限公司申请一项名为“风电混塔管片制造厂...
上海电气风电申请模块化吊机相关... 6月13日消息,国家知识产权局信息显示,上海电气风电集团股份有限公司申请一项名为“模块化自组装吊机及...