已知一个带有表头结点的单链表,结点结构为: 假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:

admin2013-04-26  46

问题 已知一个带有表头结点的单链表,结点结构为:

假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data域的值,并返回1;否则,只返回0。要求:
描述算法的详细实现步骤。

选项

答案算法的详细实现步骤:①count=0,p和q指向链表表头结点的下一个结点:②若p为空,转⑤;③若count等于k,则q指向下一个结点:否则,count=count+1;④p指向下一个结点,转②;⑤若count等于k,则查找成功,输出该结点的data域的值,返回1;否则,说明k值超过了线性表的长度,查找失败,返回0;⑥算法结束。

解析
转载请注明原文地址:https://kaotiyun.com/show/Vwxi777K
0

最新回复(0)