首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
用单链表保存m个整数,结点的结构为:[data][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如
用单链表保存m个整数,结点的结构为:[data][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如
admin
2015-12-30
62
问题
用单链表保存m个整数,结点的结构为:[data][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->link free(r), } } free(q); }
解析
转载请注明原文地址:https://kaotiyun.com/show/lKxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
1993年,中共十四届三中全会上通过了《中共中央关于解决社会主义市场经济体制若干问题的决定》,其内容不包括()
蒙古军西征之后,罗斯处于()的控制之下。
“文化大革命”发动的两个纲领性文件是()。
波兰三次被瓜分的时间是()
二战期间,下列四次战役的时间先后顺序是()①莫斯科战役②诺曼底登陆③不列颠之战④阿拉曼战役
中共十六届五中全会提出,建设社会主义新农村的要求是生产发展和()。
晚清时期下列武装力量出现的先后顺序是()。
简述罗马共和国早期平民反贵族斗争的原因、过程和意义。
到1869年为止,人类已发现了多少种化学元素()。
一棵:BS’r树共7个结点,值分别为1、2、3、4、5、6、7,形态为满二叉树,()不是插入序列。
随机试题
若∫dx=arcsin2x+C,则φ(x)=______.
A、舌神经B、舌咽神经C、舌下神经D、鼓索神经E、下颌神经支配舌后1/3感觉的是
既能温肺化饮,又能宣通鼻窍的药物是
某重度有机磷农药中毒病人,经抢救病情缓解,3日后突然出现肌无力,呼吸肌麻痹,提示为( )。【历年考试真题】
基金管理人负责披露的事项,具体涉及()
根据证券法律制度的规定,下列各项中,属于禁止的证券交易行为的有()。
商业银行区别于其他金融机构的最明显特征是()。
按照所给文段的思路,仿照相应的句式,将文段补写完整。人生中难免有些事情不尽如人意:也许你想成为太阳,却只是一颗不起眼的星星;也许你想成为大海,________;________,却只是一根细弱的小草。这个时候,请不要失去人生的方向。只要珍惜自己,
2001年,《国务院关于基础教育改革与发展决定》提出,坚持教育必须为社会主义现代化建设服务,为人民服务,必须与生产劳动和社会实践相结合,培养()等全面发展的社会主义事业建设者和接班入。
在一些地方的政府部门,电子政务的要领概念常被“简单化”,官方网站既无必要的经费,也无专门的技术维护人员,网站“一建了之”、“长睡不醒”,网页内容长期“涛声依旧”,得不到有效的更新。要改变这一现象,真正发挥电子政务的功效,需要()。
最新回复
(
0
)