首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
用单链表保存m个整数,结点的结构为:[data][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如
用单链表保存m个整数,结点的结构为:[data][link],且|data|≤n(n为正整数)。现要求设计一个时间复杂度尽可能高效的算法,对于链表中data的绝对值相等的结点,仅保留第一次出现的结点而删除其余绝对值相等的结点。例如,若给定的单链表head如
admin
2015-12-30
45
问题
用单链表保存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
学硕统考专业
相关试题推荐
文艺复兴时期,系统提出了国家主权理论的政治思想家是()。
“文化大革命”发动的两个纲领性文件是()。
蒙古军第一次大规模进攻南宋是在()时期
巴黎和会上,英美主张把原德国在山东的权利转让给日本,华盛顿会议又表示支持中国让日本归还山东的要求,英美态度发生变化的根本原因是()。
阅读材料,回答以下问题:材料一:甘地认为,非暴力抵抗是印度争取摆脱殖民桎梏的唯一正确办法;同时,他认为非暴力抵抗并不意味着对外国统治和其他罪恶的屈服。他写道:“我深信假如只有在怯懦和暴力两者之间加以选择时,我将劝人选择暴力……我宁愿要印度用暴力来保护自己
到1869年为止,人类已发现了多少种化学元素()。
下图是某模型机CPU的组成框图。设该CPU采用同步控制逻辑,分取指周期、取第一操作数周期,取第二操作数周期、执行周期四个机器周期,每个机器周期有T0、T1、T2三个节拍。试写出如下双操作数运算指令的微操作命令及节拍安排。ADDR0,(R1)完成功
假设系统的所有资源是同类型的,系统中的进程每次申请资源数最多1个,那么,下面列出的4种情况中,()可能发生死锁。情况序号系统中进程数资源总量
下列选择中,()不是操作系统关心的主要问题。
若线性表最常用的运算是查找第i个元素及其前驱的值,则采用()存储方式节省时间。
随机试题
关于流行性脑脊髓膜炎预后的描述,正确的是
下列不属于直接引入法造影的是
关于感光效应与管电压的关系,正确的叙述是
A.解除冠状动脉痉挛,抗血小板凝聚,改善冠脉供血和微循环灌注B.降低心脏后负荷,减少心肌氧耗C.扩张冠状动脉及外周静脉,降低心脏前负荷,减少心肌氧耗D.减弱心肌收缩力,减慢心率,减少心肌氧耗E.使钾离子进入细胞内,促进细胞膜极化状态的恢复美托洛
下列哪条叙述是错误的
下列关于承诺的说法中,不正确的是()。
[1997年第092题,1995年第113题]高层建筑物内的观众厅、展览厅、餐厅、商场营业厅等,由厅内任何一点至最近的疏散出口直线距离,下列哪条是正确的?
某建材超市允许个人购买建材时分12个月付清款项,这种做法对应的信用形式为()。
城市社区建设的基本原则是()。
姜某使用伪造、变造的金融票据,在签订履行合同的过程中,骗取对方当事人的信任,并骗得其财物,数额较大。下述关于对姜某行为认定的表述不正确的是()。
最新回复
(
0
)