首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
已知一个带有表头结点的单链表,结点结构为: 假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
已知一个带有表头结点的单链表,结点结构为: 假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
admin
2013-04-26
99
问题
已知一个带有表头结点的单链表,结点结构为:
假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
根据设计思想和实现步骤,采用程序设计语言描述算法(使用c、c++或Java语言实现),关键之处请给出简要注释。
选项
答案
算法实现: typedef int ElemType ; //链表数据的类型定义 typedef struct LNode{ //链表结点的结构定义 ElemType data, //结点数据 struct Lnode*link; //结点链接指针 } *LinkList; int Search—k(LinkList list,int k){ //查找链表list倒数第k个结点,并输出该结点data域的值 LinkList p=lis七一>link,q=list一>link, //指针p、q指示第一个结点 int COunt=O; while(p!=NULL){ //遍历链表直到最后一个结点 if(COUnt
link;p=p一>link; //之后让p、q同步移动 )//while if(COUnt
data); return 1; } }//Search—k
解析
算法程序题,如果能够写出数据结构类型定义、正确的算法思想都会至少给一半以上分数,如果能用伪代码写出自然更好,比较复杂的地方可以直接用文字表达。若所给出的算法采用一遍扫描方式就能得到正确结果,可给满分15分;若采用两遍或多遍扫描才能得到正确结果的,最高给10分:若采用递归算法得到正确结果的,最高给10分:若实现算法的空间复杂度过高(使用了大小与k有关的辅助数组),但结果正确,最高给10分。
转载请注明原文地址:https://kaotiyun.com/show/jwxi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
秦统一后,秦始皇接受()的建议全面推行郡县制,把全国分成36郡,以后又陆续增设40余郡。
光绪元年七月,清政府迫于()强烈要求派一位使臣到其国,()成为中国第一个驻外公使
国共合作之后,红军改编为八路军,其中原是红四方面军的是()
元代对边疆地区的统治方式不同于其他三地的一地是()。
列宁在()中系统地阐明了马克思主义的国家学说。
试结合新民主主义革命不同历史时期的历史实际,阐述中国共产党在处理同资产阶级复杂关系问题上的做法、结果及其历史经验。
上海机器织布局
阅读下列材料,回答问题:材料一:我们与希特勒或他们的匪帮永不会谈,永不斡旋,我们将在陆地上、海洋上、天空中与他们作战。直到把笼罩阴云于大地的一切敌人消灭为止……任何为反对纳粹主义而战斗的国家或人民,我们都支援。任何与希特勒为伍的人或国家都是我们的敌人。我
美国首次提出争夺世界霸权的纲领性文件是()。
下列选项中,用于设备和设备控制器(I/O接口)之间互连的接口标准是
随机试题
《咬文嚼字》中,运用“推敲”这个典故,是为了说明()
职业品质是一个人在职业行为和作风中所表现出来的思想、认识、品性等的相对稳定的倾向和特征。下列选项中,属于优良职业品质的是
系统性硬化症时可出现
治疗肺痈咳吐脓血、热毒疮疡的中药功效是
美国国家情报局局长上周在一次公开会议上(),美国年度情报总预算数额为440亿美元。多年来,美国政府对这个数字一直采取守口如瓶的态度,外人对此不得而知。
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性。
根据内外均衡的理论,当一个经济体处于通货膨胀和国际收支逆差的经济状况时,应该采用下列()项政策搭配。
以下程序的功能是随机产生10个两位的整数:OptionBase1PrivateSubCommand1_Click() Dima(10)AsInteger DimiAsInteger Randomize Fori=1
在软件设计中,不属于过程设计工具的是 ______。
正则明事务所的统计员小任需要对本所外汇报告的完成情况进行统计分析,并据此计算员工奖金。按照下列要求帮助小任完成相关的统计工作并对结果进行保存:在“客户简称”和“报告收费(元)”两列之间插入一个新列、列标题为“责任人”,限定该列中的内容只能是员工姓名高小
最新回复
(
0
)