首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
用单链表保存m个整数,结点的结构为:[dlata][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head
用单链表保存m个整数,结点的结构为:[dlata][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head
admin
2015-12-30
60
问题
用单链表保存m个整数,结点的结构为:[dlata][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如下:
则删除结点后的head为:
要求:
根据设计思想,采用C或C++语言描述算法,关键之处给出注释。
选项
答案
算法实现 void func (PNODE h,int n) {PNODE p=h,r, int *q,m; q=(int *)malloc(sizeof(int)*(n十1));//申请n+1个位置的辅助空间 for(int i=0,i<n+1,i++)//数组元素初值置0 *(q+i)=0; while(p->link!=NULL) {m=p->link->data>0?p->link->data:-p->link->data; if(*(q+m)==0)//判断该结点的data是否己出现过 {*(q+m)=1,//首次出现 p=p->link;//保留 } else//重复出现 {r=p->link;//删除 P->link=r->fink free(r); }
解析
转载请注明原文地址:https://kaotiyun.com/show/TIRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
巴黎公社采取的带有无产阶级专政性质的措施有()。①公社人员由民主选举产生②没收逃亡资本家的工厂,交给工人合作社管理③取消旧的国家机器,建立:亡人阶级自己的国家机构④工职人员年薪不得超过熟练工人的工资
基督教产生的时间是()。
广西壮族自治区的设立时间是()。
1979年3月,邓小平在中央理论工作务虚会上首次明确提出必须坚持()。
关于《荷马史诗》的叙述不正确的是()。
关于《新学伪经考》、《孔子改制考》的说法正确的是()。①都是利用古书古人宣传西方资产阶级政治的学说,向西方寻求救国真理②借用儒家学说和孔子的偶像进行宣传,可减少来自封建顽固势力的阻挠和压力③是维新变法的重要理论依据④动摇了封建统治的思想基
洋务派创办军事工业的方式是()。
典型的西欧封建庄园对农民采用的剥削方式是()。
1936年,张学良和杨虎城发动的西安事变()。①是一次具有爱国意义的兵变②民族矛盾激化的结果③检验了中国社会各阶级的抗日态度④促成了抗日民族统一战线初步形成
高度为4的4阶B树最多可容纳()个关键字(根是第1层)。
随机试题
2018年,全国居民人均消费支出19853元,比上年名义增长8.4%,扣除价格因素,实际增长6.2%。其中,城镇居民人均消费支出26112元,增长6.8%,扣除价格因素,实际增长4.6%;农村居民人均消费支出12124元,增长10.7%,扣除价格因素,实际
_____、_______、_____是构成悲剧内涵的三个核心因素。
糖尿病患者出现强烈饥饿感、心悸、手抖、出汗可能是由于
建筑物楼宇智能化以综合布线系统为基础,其中进行综合管理的现代4C技术包括()。
下列关于房地产开发的成本、费用扣除的税务处理陈述,不正确的是()。
某生产喷雾器的农机厂为增值税一般纳税人,2014年3月生产销售喷雾器,取得不含税销售收入50万元,为农民修理喷雾器取得修理费收入10万元。当月购入零配件增值税专用发票上注明的税款为3.4万元,零部件已入库。该厂3月份应纳增值税是()万元。
张文豪原本是一家养殖公司的专业养殖员,在2013年4月2日与这家公司签订了为期一年的劳动合同,这家公司要求张文豪必须经过3个月试用期的考核后才能成为正式员工。如果张文豪在试用期期间表现不合格,那么之前签订的劳动合同将不再继续有效。这家公司同时承诺,在试用期
能力的补偿是指同一个体的不同能力之间或组织内部成员之间能力的相互替代和补偿作用,从而保持或维持活动的正常进行。其中辐射补偿是指优势能力有效地加强了各种能力之间的相互联系或带动其他能力同时提高的现象。放大补偿是指优势能力的高度发展,有效地弥补某些薄弱能力的现
在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:PrivateSubCommand1Click()Move500,500EndSub程序运行后,单击命令按钮,执行的操作为
WhatIsGoodWritingforChildren?Thechildren’spublisherswilltellyoutheylookfor"goodwriting".Whatexactlydothe
最新回复
(
0
)