自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 收藏
  • 关注

原创 回溯算法去重的两种写法

关于回溯,无论是排列、组合、子集,都会涉及到两个问题,一个是去重,另一个则是剪枝;去重通常有几种方法。以这道题来做验证。

2023-12-18 09:49:55 99

原创 剑指offer-删除链表中的节点

有一个单链表的head,我们想删除它其中的一个节点node。给你一个需要删除的节点node。你将第一个节点head。链表的所有值都是,并且保证给定的节点node不是链表中的最后一个节点。删除给定的节点。注意,删除节点并不是指从内存中删除它。nodenode。

2023-12-03 10:26:45 104

原创 常用的系统播放器——MediaPlayer生命周期

参考自《Android音视频开发》——何俊林

2023-11-28 21:33:46 168

原创 音视频基础知识

参考自《Android音视频开发》——何俊林

2023-11-28 21:32:35 108

原创 剑指Offer-机器人的运动范围

家居整理师将待整理衣橱划分为m x n的二维矩阵grid,其中grid[i][j]代表一个需要整理的格子。整理师自grid[0][0]开始地整理每个格子。整理规则为:在整理过程中,可以选择或,但不能移动到衣柜之外。同时,不需要整理的格子,其中digit(x)表示数字x的各数位之和。请返回整理师。

2023-11-14 15:22:56 54

原创 剑指Offer-剪绳子

现需要将一根长为正整数bamboo_len的竹子砍为若干段,每段长度均为正整数。请返回每段竹子长度的最大乘积是多少。

2023-11-12 10:32:10 102

原创 剑指Offer-旋转数组中的最小数

仓库管理员以数组stock形式记录商品库存表。stock[i]表示商品id,可能存在重复。原库存表按商品id升序排列。现因突发情况需要进行商品紧急调拨,管理员将这批商品id提前依次整理至库存表最后。请你找到并返回库存表中编号的以便及时记录本次调拨。

2023-11-07 15:21:21 83

原创 剑指Offer-推理二叉树

preorder里头的第一个元素必定是根节点,这里为3,在inorder里头,3的左右子节点则是。在寻找左右子节点时,我们需要界定其范围,因此参数加入left和right表示左右子树的范围。而每一个根节点都可以像这样子构建,因此这道题是体现了分治的思想。原理是:中序里面左右子树的长度是等于前序数组里头左右子树的长度的。,每次–,用来轮询根节点的值,实际上并不需要一个一个都去访问。在构建左右子树是,我们可以直接锁定住根节点的位置。对于右子树来说,根节点就是当前的。,而在中序数组中,得到根节点的。

2023-11-06 14:23:53 70

原创 剑指offer-二维数组中的查找

剑指offer-二维数组的查找

2023-11-05 10:35:24 101

原创 day24-106.从中序与后序遍历序列构造二叉树

根据一棵树的中序遍历与后序遍历构造二叉树。注意: 你可以假设树中没有重复的元素。例如,给出。

2023-08-11 09:21:45 337

原创 day23-113. 路径总和ii

给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。示例: 给定如下二叉树,以及目标和 sum = 22,说明: 叶子节点是指没有子节点的节点。,像这样传递参数,返回后数值不变。

2023-08-10 09:09:35 76

原创 day22-513.找树左下角的值

给定一个二叉树,在树的最后一行找到最左边的值。

2023-08-09 09:00:59 92

原创 day21-110.平衡二叉树

给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。示例 1:给定二叉树 [3,9,20,null,null,15,7]返回 true。示例 2:给定二叉树 [1,2,2,3,3,null,null,4,4]返回 false。

2023-08-06 23:47:31 142

原创 day20-101. 对称二叉树

给定一个二叉树,检查它是否是镜像对称的。

2023-08-03 16:37:36 86

原创 day19-二叉树的最大最小深度

给定一个二叉树root,返回其最大/小深度。二叉树的是指从根节点到最远/近叶子节点的最长路径上的节点数。

2023-08-02 15:32:54 100

原创 day18-二叉树统一迭代写法

如果要做到同时处理,我们可以在要处理的结点后放一个空指针作为标记。前面说了,前序/后序和中序不能统一的原因是因为,

2023-07-31 17:16:39 219

原创 day17-二叉树的迭代遍历

二叉树的递归遍历是比较简单的。

2023-07-30 15:15:44 184

原创 day16-347.前 K 个高频元素

给定一个非空的整数数组,返回其中出现频率前 k 高的元素。

2023-07-28 10:08:01 306

原创 day15-239. 滑动窗口最大值

给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。进阶:你能在线性时间复杂度内解决此题吗?

2023-07-27 10:40:20 206

原创 day14-225. 用队列实现栈

的特性,pop时队列的队尾是被弹出的对象,因此我们要想办法使得队列的对头为队尾,这种情况也就是队列中只有一个元素。所以我们用备份队列赞成队列中的后n-1个元素,再弹出第n个元素,然后再倒回去。的特点,即使n个队列也是先进先出,队列中的数据顺序不会改变。实际上我们只用一个队列就可以实现,另一个队列做备份。和前面一道题不一样,使用队列实现栈时并不需要两个队列,因为队列。

2023-07-26 09:33:52 51

原创 day13-232.用栈实现队列

使用栈实现队列的下列操作:push(x) – 将一个元素放入队列的尾部。pop() – 从队列首部移除元素。peek() – 返回队列首部的元素。empty() – 返回队列是否为空。

2023-07-26 09:17:28 69

原创 day12-459.重复的子字符串

给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。

2023-07-23 09:56:43 64

原创 day11-KMP

实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。示例 1: 输入: haystack = “hello”, needle = “ll” 输出: 2示例 2: 输入: haystack = “aaaaa”, needle = “bba” 输出: -1说明: 当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。

2023-07-22 19:12:20 44

原创 day10-151.翻转字符串里的单词

给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: “the sky is blue”输出: “blue is sky the”示例 2:输入: " hello world!输出: “world!hello”解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: “a good example”输出: “example good a”解释: 如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。

2023-07-21 20:44:11 48

原创 day9-题目:剑指Offer58-II.左旋转字符串

字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。

2023-07-21 19:55:26 38

原创 day8-剑指Offer 05.替换空格

请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1: 输入:s = “We are happy.”输出:“We%20are%20happy.”

2023-07-20 20:56:55 41

原创 day7-三数之和

力扣15题

2023-07-19 20:27:14 988

原创 day6-四数相加II

力扣454题

2023-07-17 20:26:40 214

原创 day5-环形链表II

力扣142题

2023-07-16 21:59:44 102

原创 day4-反转链表

力扣反转链表

2023-07-15 21:22:04 732

原创 day4-链表设计

基本功题目

2023-07-15 20:43:32 148

原创 day3-螺旋矩阵 II

力扣59题

2023-07-13 16:56:48 237

原创 SunnyWeather 第一阶段 项目学习笔记

项目笔记

2023-07-12 10:37:14 284

原创 day2-长度最小的子数组

长度最小子数组

2023-07-11 21:26:43 161

原创 day2-移除元素

day2-移除元素(出自力扣)

2023-07-11 20:34:37 230

原创 KotlinLearing11-更多作用域构建器

前面学习了GlobalScope、runBlocking、launch、coroutineScope这几种作用域构建器。它们都可以用于创建一个新的协程作用域,但是前面已经说了,runBlocking会阻塞线程,而GlobalScope.launch由于每次创建的都是顶层协程,不太建议使用。主要是因为管理起来成本比较高。下面是实际项目中比较常用的写法。

2023-07-10 21:15:54 204

原创 day1-x的平方根

力扣69题

2023-07-10 17:16:48 130

原创 day1-搜索插入位置

二分应用-搜查插入位置

2023-07-10 16:55:06 177

原创 day1-二分查找

关于二分查找的两种写法

2023-07-10 16:17:03 208

原创 KotlinLearning11-协程

kotlin的协程简单语法

2023-07-10 11:53:13 55

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除