#include<iostream>
using namespace std;
struct ListNode
{
int val;
ListNode* next;
ListNode(int val)
{
this->val=val;
this->next=NULL;
}
};
class Solution {//空间记录法
ListNode *a[50];
int count1=0;
public:
ListNode* getKthFromEnd(ListNode* head, int k) {
if(head==NULL)return NULL;
else
{
while(head!=NULL)
{
a[count1++]=head;
head=head->next;
}
}
return a[count1-k];
}
};
// class Solution {
// public://快慢指针 让两指针相隔k个单位就行 一个到末尾另一个就倒数第k个
// ListNode* getKthFromEnd(ListNode* head, int k) {
// auto second =head;
// while(head!=NULL&&k)
// {
// k--;
// head=head->next;
// }
// while(head!=NULL)
// {
// second=second->next;
// head=head->next;
// }
// return second;
// }
// };
int main()
{
}
剑指 Offer 22. 链表中倒数第k个节点
最新推荐文章于 2025-05-17 09:22:26 发布