其他分享
首页 > 其他分享> > 寻找单链表倒数第K个节点

寻找单链表倒数第K个节点

作者:互联网

单链表只能从前往后跑,不能从后往前 ,因此我们申请两个指针p,q,让q指针先向前走K步,然后两个指针同时向后跑,当q指针跑到NULL时,q指针所处的位置就是我们要寻找的倒数第K个节点

//找到单链表倒数第K个节点
struct Node* Get_K_Node(PNode plist, int K)
{
	assert(plist != NULL);
	assert(K >= 1 && K <= Get_length(plist));

	PNode p = plist;
	PNode q = plist;
	for (int i = 0; i < K; i++)
	{
		q = q->next;
	}
	while (p != NULL)
	{
		p = p->next;
		q = q->next;
	}
	return p;

标签:单链,next,节点,NULL,倒数第,指针
来源: https://blog.csdn.net/qq_42795061/article/details/123179423