随笔分类 -  剑指offer

摘要:输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。 示例: 给定一个链表: 1->2->3->4-> 阅读全文
posted @ 2021-09-02 15:22 枫叶艾辰 阅读(42) 评论(0) 推荐(0)
摘要:输入两个链表,找出它们的第一个公共节点。 如下面的两个链表: 在节点 c1 开始相交。 示例 1: 输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3 输出:Reference o 阅读全文
posted @ 2021-07-21 14:49 枫叶艾辰 阅读(49) 评论(0) 推荐(0)
摘要:输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 示例1: 输入: nums = [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 提示: 1 <= arr.le 阅读全文
posted @ 2021-07-17 11:21 枫叶艾辰 阅读(30) 评论(0) 推荐(0)
摘要:统计一个数字在排序数组中出现的次数。 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 示例 2: 输入: nums = [5,7,7,8,8,10], target = 6 输出: 0 限制: 0 <= 数组长度 <= 50000 二分查找 /** 阅读全文
posted @ 2021-07-16 11:43 枫叶艾辰 阅读(38) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; /** * @Class FindNthDigit * @Description 剑指offer44 数字序列中某一位的数字 * 数字以0123456789101112131415…的格式序列化到一个字符序列中。 * 在这个序列 阅读全文
posted @ 2020-07-20 17:32 枫叶艾辰 阅读(113) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.ArrayList; import java.util.LinkedList; import java.util.List; /** * @Class LengthOfLongestSubstr 阅读全文
posted @ 2020-07-18 17:17 枫叶艾辰 阅读(129) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; /** * @Class MaxValue * @Description 剑指offer47 礼物的最大价值 * 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。 * 你可以从棋盘的左上角开 阅读全文
posted @ 2020-07-18 16:18 枫叶艾辰 阅读(125) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.Stack; /** * @Class MinStack * @Description 剑指offer 30 包含min 函数的栈 * 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素 阅读全文
posted @ 2020-07-17 15:22 枫叶艾辰 阅读(92) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.Stack; /** * @Class ValidateStackSequences * @Description 剑指offer 31 栈的压入、弹出序列 * 输入两个整数序列,第一个序列表示 阅读全文
posted @ 2020-07-17 15:02 枫叶艾辰 阅读(86) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; /** * @Class Exist * @Description 剑指 Offer 12. 矩阵中的路径 * 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。 * 路径可以从矩阵中的任意一格开始,每 阅读全文
posted @ 2020-07-15 15:57 枫叶艾辰 阅读(81) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.ArrayList; import java.util.List; /** * @Class FindContinuousSequence * @Description 剑指offer57 和为 阅读全文
posted @ 2020-07-11 15:47 枫叶艾辰 阅读(113) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.HashMap; import java.util.Map; /** * @Class CopyRandomList * @Description 剑指 Offer 35. 复杂链表的复制 * 阅读全文
posted @ 2020-07-07 11:51 枫叶艾辰 阅读(123) 评论(0) 推荐(0)
摘要:import java.util.LinkedList; /** * @Class BuildTree * @Description 剑指 Offer 07. 重建二叉树 * 输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。 * 假设输入的前序遍历和中序遍历的结果中都不含重复的数字。 * < 阅读全文
posted @ 2020-06-28 22:04 枫叶艾辰 阅读(114) 评论(0) 推荐(0)
摘要:import java.util.Deque; import java.util.LinkedList; import java.util.Stack; /** * @Class ReversePrint * @Description 剑指 Offer 06. 从尾到头打印链表 * 输入一个链表的头 阅读全文
posted @ 2020-06-28 20:18 枫叶艾辰 阅读(109) 评论(0) 推荐(0)
摘要:/** * @Class ReplaceSpace * @Description 剑指 Offer 05. 替换空格 * 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 * <p> * 示例 1: * 输入:s = "We are happy." * 输出:"We%20are%20ha 阅读全文
posted @ 2020-06-28 16:47 枫叶艾辰 阅读(104) 评论(0) 推荐(0)
摘要:/** * @Class FindNumberIn2DArray * @Description 剑指 Offer 04. 二维数组中的查找 * 在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 * 请完成一个函数,输入这样的一个二维数组和一个 阅读全文
posted @ 2020-06-28 16:00 枫叶艾辰 阅读(93) 评论(0) 推荐(0)
摘要:package com.example.lettcode.offer; import java.util.*; /** * @Class FindRepeatNumber * @Description 剑指 Offer 03. 数组中重复的数字 * 找出数组中重复的数字。 * 在一个长度为 n 的数 阅读全文
posted @ 2020-06-26 12:05 枫叶艾辰 阅读(251) 评论(0) 推荐(0)