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

《剑指offer》之从“尾到头打印链表”题解

题目:leetcode-cn.com/problems/co…题解:一说到链表题,我们第一就会想到迭代算法和递归算法,但是看下本题的要求,是从尾到头打印链表,就不需要搞一个新的链表,所以迭代算法可以先pass掉,因此我们优先考虑递归,可以不断寻找链表的Next,直到Next为null,然后不断向上返回值。图解:网络异常,图片无法展示|代码:链表类:static class ListNode { ....

《剑指offer》之从“尾到头打印链表”题解
文章 2022-11-28 来自:开发者社区

【算法题解】 Day27 链表

剑指 Offer 25. 合并两个排序的链表题目剑指 Offer 25. 合并两个排序的链表 难度:easy输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。示例1:输入: 1->2->4, 1->3->4 输出: 1->1->2->3->4->4限制:0 <= 链表长度 <= 1000 方法一:递...

【算法题解】 Day27 链表
文章 2022-11-28 来自:开发者社区

【算法题解】 Day18 链表

剑指 Offer 24. 反转链表题目剑指 Offer 24. 反转链表 难度:easy定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。示例:输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL限制:0 <= 节点个数 <= 5000 方法一:迭代思路...

【算法题解】 Day18 链表
文章 2022-11-28 来自:开发者社区

【算法题解】 Day4 链表

876. 链表的中间结点题目876. 链表的中间结点 难度:easy给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5] 输出:此列表中的结点 3 (序列化形式:[3,4,5]) 返回的结点值为 3 。 (测评系统对该结点序列化表述是 [3,4,5])。 注意,我们返回了一个 ListNo...

【算法题解】 Day4 链表
文章 2022-11-28 来自:开发者社区

【算法题解】 Day3 链表

每日一题题目1694. 重新格式化电话号码 难度:easy给你一个字符串形式的电话号码 number。number 由数字、空格 ' '、和破折号 '-' 组成。请你按下述方式重新格式化电话号码。首先,删除 所有的空格和破折号。其次,将数组从左到右 每 3 个一组 分块,直到 剩下 4 个或更少数字。剩下的数字将按下述规定再分块:2 个数字:单个含 2 个数字的块。3 个数字:单个含 3 个数字....

【算法题解】 Day3 链表
文章 2022-05-14 来自:开发者社区

LeetCode题解—链表中环的检测

前言今天说链表算法题的最后一题:环的检测单链表反转两个有序的链表合并删除链表倒数第n个结点求链表的中间结点链表中环的检测题目:链表中环的检测给定一个链表,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 pos为环的起点位置。如果链表中存在环,则返回 true 。否则,返回 false 。进阶:你能用 O(1)(即,常量)内存解决此问题吗?示例....

LeetCode题解—链表中环的检测
文章 2022-05-14 来自:开发者社区

LeetCode题解—求链表的中间结点

前言没错,今天又是算法,马上放假啦,心已经飞走了。 明天是过年前的最后一篇:面试题思考与解答1月刊。今天继续说说链表算法题:求链表的中间结点。单链表反转两个有序的链表合并删除链表倒数第n个结点求链表的中间结点链表中环的检测题目:求链表的中间结点给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例 1:输入:[1,2,3,4,5] 输出:此列....

文章 2022-05-14 来自:开发者社区

LeetCode题解—删除链表倒数第n个结点

前言今天继续说链表常见问题中的——删除链表倒数第n个结点:单链表反转两个有序的链表合并删除链表倒数第n个结点求链表的中间结点链表中环的检测题目:删除链表倒数第n个结点给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。进阶:你能尝试使用一趟扫描实现吗?示例 1:输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5]示例 2:输入:head = [1], ....

LeetCode题解—删除链表倒数第n个结点
文章 2022-05-14 来自:开发者社区

链表基础&LeetCode题解

前言今天继续算法题:从尾到头打印链表链表在看今天题目之前,我们先了解下链表。链表是一种物理存储单元上非连续、非顺序的存储结构。由于不必须按顺序存储,链表的插入和删除操作可以达到O(1)的复杂度熟悉数组的都知道,数组是需要一块连续的内存空间来存储。而链表就不需要,它是通过指针来将内存块串联起来。常见的链表结构有:单链表、双向链表和循环链表。(图片来自参考链接)单链表第一个接点为头结点,最后一个结点....

链表基础&LeetCode题解
文章 2021-12-30 来自:开发者社区

【Java算法题解】剑指 Offer II 022. 链表中环的入口节点

解析先通过快慢指针判断有无环无环直接返回null有环假设起点到环起点的距离是a,环的长度是k,且此时A、B在距离环起点x距离处相遇。即慢指针再走x步就到达环的入口,此时slow走过的距离a + nk + (k - x)快指针走过的距离:a + mk + (k - x)由快慢的定义可知:a + mk + (k - x) = 2 * (a + nk + (k - x))化简得:a = (m - 2n....

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

数据库

分享数据库前沿,解构实战干货,推动数据库技术变革

+关注