zoukankan      html  css  js  c++  java
  • 链表中倒数第k个结点

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

    思路:使用两个指针一个指在头节点另一个指在第k个节点,进行循环使两指针同时向后移动,直到后指针指到链表尾部则前指针所指即为答案

    代码:

     1 /*
     2 public class ListNode {
     3     int val;
     4     ListNode next = null;
     5 
     6     ListNode(int val) {
     7         this.val = val;
     8     }
     9 }*/
    10 public class Solution {
    11     public ListNode FindKthToTail(ListNode head,int k) {
    12         if(k==0)
    13             return null;
    14         if(head==null)
    15             return null;
    16         else{
    17             ListNode pre = head;
    18             ListNode end = head;
    19             for(int i=k-1;i>0;i--){
    20                 end = end.next;
    21             }
    22             if(end==null)
    23                 return null;
    24             else if(end.next==null)
    25                 return pre;
    26             else{
    27                 while(end.next!=null){
    28                     pre = pre.next;
    29                     end = end.next;
    30                 }
    31                 return pre;
    32             }
    33         }
    34     }
    35 }

    少偷懒。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 相关阅读:
    9.17(day11)
    9.14(day10)
    9.13(day9)
    9.12(day8)
    mysql 的存储过程
    MySQL 子查询与多表联合查询
    MySQL 函数
    MySQL 的查询
    MySQL的约束
    MySQL 表的增删改查操作
  • 原文地址:https://www.cnblogs.com/haq123/p/12117184.html
Copyright © 2011-2022 走看看