剑指Offer22- 链表中倒数第k个结点

输入一个链表,输出该链表中倒数第k个结点。

/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/
import java.util.Stack;
public class Solution {
   
    public ListNode FindKthToTail(ListNode head,int k) {
   
        Stack<ListNode> s=new Stack<ListNode>();
        ListNode pre=null;
        int count=0;
        if(head==null)//如果链表为空
            return null;
        while(head!=null){
   //将链表压入栈中,然后记录链表的结点个数
            s.push(head);
            head=head.next;
            count++;
        }
        if(k>count)//如果k>结点个数
            return null;
        for(int i=0;i<k;i++){
   
            pre=s.pop();
             
        }
        return pre;
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
10-29 21:14
疯犬丨哈士奇:喜欢你的人会主动表白,对你有想法的人会很主动,所以要你的公司不会吊着你所以懂了吧
点赞 评论 收藏
分享
dachang盒子:26届秋招必须有实习经历,建议找个实习过度下,同时项目重复率也比较高没有什么难点亮点,我这里有大厂真实的项目可以提供给你学习也可以给你包装大厂实习来提高你的竞争力,感兴趣的话可以私信我或者点我主页简介
你已经投递多少份简历了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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