原文:python经典算法面试题1.5:如何找出单链表中的倒数第K个元素

本题目摘自 Python程序员面试算法宝典 ,我会每天做一道这本书上的题目,并分享出来,统一放在我博客内,收集在一个分类中。 微软笔试题 难度系数: 考察频率: 题目描述: 找出单链表中的倒数第k个元素,例如给定单链表: gt gt gt gt gt gt ,则单链表的倒数第 个元素为 . 方法一:顺序遍历法 这种方法需要对单链表进行两次遍历,第一次遍历得到单链表的长度,这样我们在第二次遍历过程 ...

2019-10-29 09:28 0 307 推荐指数:

查看详情

如何找出链表倒数第k元素

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

Wed Jun 06 15:36:00 CST 2018 0 3081
面试题15:链表倒数第K个结点

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

Fri Apr 27 21:03:00 CST 2012 1 4468
剑指Offer面试题:14.链表倒数第k个节点

PS:这是一道出境率极高的题目,记得去年参加校园招聘时我看到了3次,但是每次写的都不完善。 一、题目:链表倒数第k个节点 题目:输入一个链表,输出该链表倒数第k个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点 ...

Sat Aug 29 23:04:00 CST 2015 2 11553
找到链表倒数第k个节点 python

  题目:给定一个链表的头节点,输出链表倒数第k个节点的值   分析:最简单的思路就按顺序访问链表节点,得到链表的长度x之后,再次从头节点出发,访问到第x-k+1个节点时,就是链表倒数第k个节点,但是这样的方法对前x-k+1个节点重复访问了两遍,效率较低。在解答链表相关题目时,设置两个甚至三个 ...

Sun Apr 14 19:13:00 CST 2019 0 509
链表倒数第K个节点

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

Fri Apr 15 03:25:00 CST 2016 0 5162
LeetCode–链表倒数第k个节点

LeetCode–链表倒数第k个节点 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 介绍 剑指 Offer 22. 链表倒数第k个节点 题目 输入一个链表,输出该链表倒数第k个节点。为了符合 ...

Sat Sep 12 03:21:00 CST 2020 0 671
链表倒数第k个节点

题目 输入一个链表,输出该链表倒数第k个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点开始它们的值依次是1、2、3、4、5、6。这个链表倒数第3个结点是值为4的结点。 解题思路 1.不可行的常规解法   为了得到倒数第k ...

Wed Dec 26 06:55:00 CST 2018 0 1011
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM