数据结构练习(08)链表中倒数第k个结点
http://zhedahht.blog.163.com/blog/static/2541117420072114478828/
这道题的代码有大量的指针操作。在软件开发中,错误的指针操作是大部分问题的根源。因此每个公司都希望程序员在操作指针时有良好的习惯,比如使用指针之前判断是不是空指针。这些都是编程的细节,但如果这些细节把握得不好,很有可能就会和心仪的公司失之交臂。
struct Node {int key;Node *next; };Node* findkth2tail(Node *head, unsigned int k) {if (head == NULL)return NULL;Node *p1, *p2;p1 = head, p2 = NULL;for (int i = 0; i < k; ++i){if (p1->next != NULL)p1 = p1->next;elsereturn NULL;}p2 = head;while (p1->next != NULL){p1 = p1->next;p2 = p2->next;}return p2; }
转载于:https://www.cnblogs.com/kedebug/archive/2012/12/12/2814236.html
数据结构练习(08)链表中倒数第k个结点相关推荐
- 程序员面试题精选100题(09)-链表中倒数第k个结点[数据结构]
题目:输入一个单向链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针.链表结点定义如下: struct ListNode { int m_nKey; ...
- 剑指offer_第14题_链表中倒数第k个结点_Python
题目描述 输入一个链表,输出该链表中倒数第k个结点. 理解 链表详解 python数据结构之链表 解题思路 思路1 确定链表种结点个数lenth 倒数第k个结点就是第length-k+1个结点 需要考 ...
- 【Java】找到链表中倒数第k个结点
题目描述 : 输入一个链表,输出该链表中倒数第k个结点. 解题思路 : 1.根据以上链表进行分析 2.算法思想 : 定义两个引用,即快慢指针,都从头节点开始向后走: 要找到倒数第k个节点,即要让快指针 ...
- 剑指offer:链表中倒数第k个结点 python实现
链表中倒数第k个结点 输入一个链表,输出该链表中倒数第k个结点. 解题思路 暴力求解: 判断链表是否为空: 复制链表,遍历一遍统计其长度: 如果长度小于k.则返回None: 否则,返回其长度-k的链表 ...
- 【剑指offer-Java版】15链表中倒数第K个结点
链表中倒数第K个结点:快慢指针解决 需要注意的地方是 1) 可能会存在输入的链表大小小于k 2) 输入的k可能小于等于0 - 所以必须限定k大于0 public class _Q15 {public ...
- 面试经典:链表中倒数第k个结点?如何从大量数据中找出高频词?
记录两道面试题: 题目描述: 输入一个链表,输出该链表中倒数第k个结点.(单向链表) 拿到这个问题的时候自然而然会想到让链表从末尾开始next K-1 次不就是第K-1个节点了么,但是必须要注意一 ...
- 剑指Offer_14_链表中倒数第k个结点
题目描述 输入一个链表,输出该链表中倒数第k个结点. 解题思路 利用两个指针,第一个指针先走k步,然后第二个指针从头开始走,当第一个指针到达最后时,第二个指针指向的结点就是倒数k个.如果第一个指针走到 ...
- 【编程题目】输入一个单向链表,输出该链表中倒数第 k 个结点
第 13 题(链表): 题目:输入一个单向链表,输出该链表中倒数第 k 个结点.链表的倒数第 0 个结点为链表 的尾指针. 链表结点定义如下: struct ListNode { int m_nKey ...
- 输出链表中倒数第k个结点
题目描述输入一个链表,输出该链表中倒数第k个结点. 分类:链表 解法1:双指针,第一个指针先走k步,然后第二个指针也开始走,当第一个指针到达末尾,第二个指针也就是到了倒数第k个节点 要注意null链表 ...
- 剑指Offer #14 链表中倒数第k个结点(快慢指针) | 图文详解
题目来源:牛客网-剑指Offer专题 题目地址:链表中倒数第k个结点 题目描述 输入一个链表,输出该链表中倒数第k个结点. 节点结构如下: public class ListNode {int val ...
最新文章
- php没有phpapache,php没有被apache解析怎么办
- jenkins linux 配置文件,Jenkins 部署打包文件 并通过SSH上传到 linux服务器
- WinForm实现类似QQ停靠,显示隐藏过程添加特效效果
- linearregression_机器学习-TensorFlow建模过程 Linear Regression线性拟合应用
- 【最新版】Java速成路线(急于找工作!)
- Python安装dlib包
- 服务器网口正在验证身份6,无法使用基本身份验证进行身份验证(示例代码)
- 德软件开发者否认蓄意植入“心血”安全漏洞
- AutoCad注册机使用方法
- Win10系统打开共享文件提示没有权限使用网络资源怎么处理?
- 磁盘介质受写入保护解决办法
- python ide哪个好用_好用的Python IDE推荐
- DeepMind 联合创始人加盟 Google AI【智能快讯】
- java jsp实现注册登录界面_jsp实现简单的用户登录和注册
- 南京都昌公司乔迁之志
- Linux Shell中的变量-环境变量
- 国密算法(SM2,SM3,SM4)完善与算法辅助工具开发
- latex如何更改某一段落的字体_LaTeX基础四:字体字号设置
- 2021年河南高考--各高校在河南录取分数线预测(本科一批——理科):
- CornerStone —— 医学影像显示的JavaScript库简介
热门文章
- cad文字提取到excel_别怕!CAD表格与EXCEL之间的转化,有它就够了
- 【Maven】windows 拷贝项目到内网 全面飘红 终极解决
- 95-910-165-源码-FlinkSQL-Flink SQL 中的时间属性
- 【Flink】FLink Barrier 在流经算子 做 checkpoint 的时候,数据是停止的吗?
- 【es】es 集群黄色几个索引未分配 timed out waiting for all nodes to published state
- 【guava】大数据量下的集合过滤—Bloom Filter
- 95-190-440-源码-window-Trigger-Trigger简介
- 【Java】java中 ==,equals,hashcode
- Spring : Spring定义Bean的两种方式:lt; bean gt;和@Bean
- EF mysql 数据迁移_Asp.Net Core EFCore Migrations 数据迁移