题解 | #链表中倒数最后k个结点#

链表中倒数最后k个结点

http://www.nowcoder.com/practice/886370fe658f41b498d40fb34ae76ff9

typedef struct ListNode Node;

Node* find(Node* pHead, int k)
{
	Node* tmp = pHead;
	int i;
	if (pHead == NULL||k<=0)
		return NULL;
	for (i = 0; i < k-1; i++)
	{
		if (tmp->next == NULL)
			return NULL;
		tmp = tmp->next;
	}
	return tmp;
}

struct ListNode* FindKthToTail(struct ListNode* pHead, int k ) {
	Node* tmpH = pHead;
    Node* tmpK = find(pHead, k);
	if (!tmpK || !tmpH||k<=0)
		return NULL;

	while (tmpK->next != NULL)
	{
		tmpH = tmpH->next;
		tmpK = tmpK->next;
	}
	return tmpH;
}
全部评论

相关推荐

09-14 20:51
四川大学 Java
慢热的鲸鱼在学习:985加粗就行了,第二个项目来不及准备也没事,省的写了问你你还不会。你只需准备面试八股和项目场景,剩下的交给985。即使面不过也没事,面试经验是最重要的,你现在不缺时间
简历中的项目经历要怎么写
点赞 评论 收藏
分享
Aurora23:属于挂一半,暂时进池子了,隔一段时间没有其他组捞的话就彻底结束了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务