输出单向链表中倒数第k个结点
2023-09-27 14:26:30 时间
题目描述
输入一个单向链表,输出该链表中倒数第k个结点,链表的倒数第1个结点为链表的尾指针。
链表结点定义如下:
struct ListNode
{
int m_nKey;
ListNode* m_pNext;
};
详细描述:
接口说明
原型:
ListNode* FindKthToTail(ListNode* pListHead, unsignedint k);
输入参数:
ListNode* pListHead 单向链表
unsigned int k 倒数第k个结点
输出参数(指针指向的内存区域保证有效):
无
返回值:
正常返回倒数第k个结点指针,异常返回空指针
输入描述:
输入说明 1 输入链表结点个数 2 输入链表的值 3 输入k的值
输出描述:
输出一个整数
输入例子:
8 1 2 3 4 5 6 7 8 4
输出例子:
5
for (int i = 0; i<k - 1; i++)
{
if (a->next == NULL)return NULL;
else a = a->next;
}
while (a->next != NULL)
{
a = a->next;
b = b->next;
}
return b;
}
int main()
{
int n, a, k;
while (cin >> n)
{
ListNode* head = new ListNode(0);
ListNode* p = head;
for (int i = 0; i<n; i++)
{
cin >> a;
ListNode* q = new ListNode(a);
p->next = q;
p = p->next;
}
cin >> k;
ListNode* temp = findK(head, k);
if (temp == NULL)cout << '0' << endl;
else cout << temp->value << endl;
}
return 0;
}
相关文章
- python链表的实现,有注释
- 数组与链表(暂时只有单链表)
- 链表
- js数据结构-链表
- 【数据结构初阶】单链表补充内容+又双叒叕刷链表题
- 删除链表中重复元素的问题
- 1032 Sharing (坑题,不难,测试点3、4、5分析,链表相关)
- [数据结构]循环链表及其基本操作
- 几种链表的优缺点比较
- 【Java数据结构与算法】LeetCode面试题02.07 链表相交
- 数据结构 | 证明:含有n个结点的二叉链表中共有n+1个空链域
- 【数据结构/链表】基础内容+leetcode刷题路线(持续更新)
- 链表面试常见题
- 【JAVA】输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
- 【JAVA】输入一个链表,输出该链表中倒数第k个结点。
- 链表相关