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

admin2015-12-30  26

问题 已知一个带有表头结点的单链表,结点结构为:假设该链表只给出了头指针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/pKxi777K
0

最新回复(0)