文章 2023-12-01 来自:开发者社区

剑指Offer LeetCode 面试题22. 链表中倒数第k个节点

面试题22. 链表中倒数第k个节点输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6。这个链表的倒数第3个节点是值为4的节点。示例:给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5.解题1、创建....

文章 2023-12-01 来自:开发者社区

剑指Offer LeetCode 面试题18. 删除链表的节点

面试题18. 删除链表的节点给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。注意:此题对比原题有改动示例 1:输入: head = [4,5,1,9], val = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入: head = [4,5,....

剑指Offer LeetCode 面试题18. 删除链表的节点
文章 2023-06-19 来自:开发者社区

剑指Offer - 面试题23:链表中环的入口节点

题目如果一个链表中包含环,如何找出环的入口节点?例如,在下图中的链表中,环的入口节点是节点3。分析将这个问题解剖开。分为俩步判断是否有环有环再找入口节点第一个问题:我们用快慢指针来判断,只要相遇就有环,快指针走到头就是没有环。第二个问题:与剑指Offer - 面试题22:链表中倒数第K个节点第二种方法思想相似,可以先去看看这个题。我们先定义链表头到入口距离m,环的长度为n。那么可以先让快指针从头....

剑指Offer - 面试题23:链表中环的入口节点
文章 2023-06-19 来自:开发者社区

剑指Offer - 面试题22:链表中倒数第K个节点

题目输入一个链表,输出该链表中倒数第K个节点。为了和服大多数人习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。例如,一个链表有6个节点,从头节点开始,它们的值依次是1、2、3、4、5、6.这个链表的倒数第3个节点是值为4的节点。链表节点定义如下:分析二次遍历我们很容易就想到,可以先遍历一次得出链表的长度,然后再从头开始向后移动len-k个节点。C++#include <iostre....

剑指Offer - 面试题22:链表中倒数第K个节点
文章 2023-06-19 来自:开发者社区

剑指Offer - 面试题8:二叉树的下一个节点

题目给定一颗二叉树和其中的一个节点,如何找出中序便利序列的下一个节点?树中的节点除了有俩个分别指向左、右子节点的指针,还有一个指向父节点的指针。结构如下typedef int TElemType; /* 树结点的数据类型,目前暂定为整型 */ struct BinaryTreeNode { TElemType m_nValue; BinaryTreeNode* m_pLeft; B...

剑指Offer - 面试题8:二叉树的下一个节点
文章 2023-06-19 来自:开发者社区

剑指Offer - 面试题18-1:删除链表的节点

题目在O(1)时间内删除链表节点。给定单项链表的头节点和一个节点指针,定义一个函数在O(1)时间内删除该节点。链表节点与函数的定义如下:typedef struct ListNode { int m_nValue; struct ListNode* m_pNext; }ListNode; void DeleteNode(ListNode** pListHead, ListNode* p...

剑指Offer - 面试题18-1:删除链表的节点

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

Java面试那些事儿

手把手带您学习Java,开启编程之路。

+关注