原文:3-输入一个链表,输出该链表中倒数第k个结点

题目:输入一个链表,输出该链表中倒数第k个结点 代码如下 运行截图 ...

2020-04-11 16:26 0 802 推荐指数:

查看详情

剑指Offer-14:输入一个链表输出链表倒数第k结点

题目描述: 输入一个链表输出链表倒数第k结点。例如有一个链表有六个节点1,2,3,4,5,6.则它的倒数第二个节点为5 节点定义如下: 思路一: 设置一个快指针,一个慢指针。像一把尺子,当尺子的一端移动到链表的末尾,则另一端则为倒数第k个节点。 思路 ...

Tue Sep 03 21:37:00 CST 2019 0 343
【编程题目】输入一个单向链表输出链表倒数第 k结点

第 13 题(链表):题目:输入一个单向链表输出链表倒数第 k结点链表倒数第 0 个结点链表的尾指针。链表结点定义如下: struct ListNode {int m_nKey;ListNode* m_pNext;}; 我的思路:先翻转链表,再从翻转后的链表的头向尾数k ...

Mon Sep 15 17:47:00 CST 2014 0 2803
编程题目:输入一个链表输出链表倒数第k个节点

两种方法 1.在链表的初始化数据中加入 num 数据, 每添加一个节点,num加1,每删除一个节点,num减1 查找倒数第k个元素,即 指向第一个节点的指针向后移动 num - k 步。 2.使用两个指针 i 和 j, i和j初始化都指向第一个节点。 查看倒数第k个元素,先将 j ...

Thu Feb 23 10:15:00 CST 2017 0 1733
【剑指Offer】14、链表倒数第k结点

  题目描述:   输入一个链表输出链表倒数第k结点。为了符合习惯,从1开始计数,即链表的尾结点倒数第1个节点。例如,一个链表有6个结点,从头结点开始,它们的值依次是1,2,3,4,5,6。则这个链表倒数第三个结点是值为4的结点。   解题思路:   对于单链表来说,没有从后向 ...

Thu Apr 25 05:13:00 CST 2019 0 532
面试题15:链表倒数第K结点

看到这道题目,最直观的想法,就是先算出链表的长度n,然后倒数第k结点就是顺序的第(n-k+1)个数,不过这样需要2次遍历链表,如果要求只能遍历链表一次,那么上述算法就不符合要求了。 那我们就使用第二种算法,设定两个指针p1和p2,两个指针刚开始都指向链表的第一个结点,然后让p1 ...

Fri Apr 27 21:03:00 CST 2012 1 4468
如何找出单链表倒数第k个元素

1、为了找出倒数第k个元素,最容易想到的办法是首先遍历一遍单链表,求出整个单链表的长度n,然后将倒数第k个,转换为正数第n-k个,接下来遍历一次就可以得到结果。但是该方法存在一个问题,即需要对链表进行两次遍历,第一次遍历用于求解单链表的长度,第二次遍历用于查找正数第n-k个元素。 2、显然 ...

Wed Jun 06 15:36:00 CST 2018 0 3081
链表倒数第K个节点

  求链表倒数第K个节点:主要思路设置两个指针,刚开始都指向链表的第一个节点,第一个指针先走k-1步,然后两个一块走,直到第一个指针的下一位为nullptr,则第二个指针所指的位置就是倒数第k个节点。   在编程书上看见这个方法,自己画了个链表试了试果然是这样,但是这是个什么原理 ...

Fri Apr 15 03:25:00 CST 2016 0 5162
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM