返回链表中倒数第k个节点 灰太狼 2022-12-18 02:58 124阅读 0赞 **思路:** 定义fast 和 slow ,先让fast走k-1步,然后再让slow和fast同时走1步,最后得到的slow就是所求的值 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1MTM2MTg5_size_16_color_FFFFFF_t_70_pic_center] **代码示例** lass ListNode { public int val; public ListNode next; public ListNode(int val){ this.val = val; this.next = null; } } public class TestDemo1025_1 { public ListNode head; public ListNode findLastK(int k){ if (k <= 0 ){ System.out.println("不合法"); return null; } ListNode fast = this.head; ListNode slow = this.head; while (k-1 != 0){ if (fast.next != null){ fast = fast.next; k--; }else { System.out.println("没有这个节点"); return null; } } while (fast.next != null){ slow = slow.next; fast = fast.next; } return slow; } } [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1MTM2MTg5_size_16_color_FFFFFF_t_70_pic_center]: /images/20221122/aa9155d0003f40e1b3a537172d3ac8e1.png
还没有评论,来说两句吧...