zoukankan      html  css  js  c++  java
  • 输入一个链表,输出该链表中倒数第k个结点。

    package com.alipay.sofa.isle.sample;
    
     class ListNode {
        int val;
        ListNode next = null;
    
        ListNode(int val) {
            this.val = val;
        }
    }
    public class Solution {
        public static ListNode FindKthToTail(ListNode head,int k) {
            ListNode res = new ListNode(0);
            find(head ,k ,res);
            return res.val == 0 ? null : res;
        }
    
        public  static  int find(ListNode head,int k ,ListNode res) {
    
            if(head == null) {
                return 1;
            } else {
                int count = find(head.next , k ,res);
                if(count == k) {
                    res.val = head.val;
                } else if(count < k){
                    res.next = head;
                    res = head;
                }
                return count + 1;
            }
        }
    
        public static void main(String[] args) {
            ListNode node1 = new ListNode(1);
            ListNode node2 = new ListNode(2);
            ListNode node3 = new ListNode(3);
            ListNode node4 = new ListNode(4);
            ListNode node5 = new ListNode(5);
            node1.next = node2;
            node2.next = node3;
            node3.next = node4;
            node4.next = node5;
            FindKthToTail(node1 , 5);
        }
    }
  • 相关阅读:
    冒泡排序
    快速排序
    玩转git版本控制软件
    django内容总结
    ajax图片上传功能
    随机验证码
    制作博客系统
    django自带的用户认证和form表单功能
    COOKIE 与 SESSION
    Ajax知识
  • 原文地址:https://www.cnblogs.com/hansc-blog/p/10597967.html
Copyright © 2011-2022 走看看