- 博客(13)
- 收藏
- 关注
原创 剑指 Offer 32 - I. 从上到下打印二叉树
剑指 Offer 32 - I. 从上到下打印二叉树从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回:[3,9,20,15,7]提示:节点总数 <= 1000这题主要用到树的层次遍历,因为之前做过,不大熟悉给忘了,现在记录一下,代码思路。主要通过队列去存储当前行的所有结点,通过while去循环队列,取出同一行的值,
2021-06-06 17:56:14
131
原创 剑指 Offer 47. 礼物的最大价值
剑指 Offer 47. 礼物的最大价值题目:在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例 1:输入: [ [1,3,1], [1,5,1], [4,2,1] ]输出: 12解释: 路径 1→3→5→2→1可以拿到最多价值的礼物提示:0 < grid.length <
2021-06-04 17:24:45
203
原创 剑指 Offer 10- I. 斐波那契数列
剑指 Offer 10- I. 斐波那契数列题目:写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:F(0) = 0F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。看到题目的时候我首先想到的是递归法,用递
2021-06-01 16:34:25
142
原创 Tomcat默认路径图片修改后无法及时更新问题
Tomcat默认路径图片修改后无法及时更新问题记一次项目使用验证码遇到的问题 我在阿里云上以Tomcat作为我的图片存储服务器,将验证码图片存储在webapps/ROOT/img文件夹中。 遇到一个问题,就是后端生成验证码图片覆盖原来的图片时,路径不改变,前端加载时会遇到无法实时刷新的问题 在图片地址后添加时间戳,这样可以在地址不改变的情况下刷新图片this.url = this.url + "?" + new Date().getTime(); 但是这样,在快速刷新验证码的情况下还是
2021-02-08 19:14:52
1347
1
原创 力扣 9. 回文数(简单难度)
力扣 9. 回文数(简单难度)判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。思路:这里我本来想要除法的方法去得到每一位数,来判断回文,后来看到有网友给出的方法,String
2020-06-10 22:03:31
247
原创 力扣 990. 等式方程的可满足性(中等难度)
力扣 990. 等式方程的可满足性(中等难度)题目:给定一个由表示变量之间关系的字符串方程组成的数组,每个字符串方程 equations[i] 的长度为 4,并采用两种不同的形式之一:“a==b” 或 “a!=b”。在这里,a 和 b 是小写字母(不一定不同),表示单字母变量名。只有当可以将整数分配给变量名,以便满足所有给定的方程时才返回 true,否则返回 false。示例 1:输入:[“a==b”,“b!=a”]输出:false解释:如果我们指定,a = 1 且 b = 1,那么可以满足第一
2020-06-08 23:21:52
203
原创 力扣 128. 最长连续序列(困难难度)
力扣 128. 最长连续序列(困难难度)题目:给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200,1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。思路:将数组放入Hash表中,然后通过contains的方法对数字的连续性进行验证。这里为了使时间复杂度减小,我们这里只要对连续数列的第一个进行操作。代码如下class Solution { public int longe
2020-06-06 21:45:41
209
原创 力扣 面试题29. 顺时针打印矩阵(简单难度)
力扣 面试题29. 顺时针打印矩阵(简单难度)题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例 2:输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]说说这题的思路,我先定义了当前坐标,用(x,y)表示,然后定义上左下右四个边界值。模拟取
2020-06-06 20:51:17
354
原创 力扣 238. 除自身以外数组的乘积(中等难度)
力扣 238. 除自身以外数组的乘积(中等难度)题目:给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。提示:题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。说明: 请不要使用除法,且在 O(n) 时间复杂度内完成此题。进阶:你可以在常数空间复杂度内完成这个题目吗?(出于对空间复杂度分析的目的,输出数组不被视为额外空间
2020-06-04 23:06:54
196
原创 力扣 面试题64. 求1+2+…+n (难度中等)
力扣 面试题64. 求1+2+…+n (难度中等)题目:求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。看到题目的时候我首先想到的使用高斯定理,也就是(n + 1) * n / 2,但题目要求不能使用乘除。于是我放弃了这个方法。想了一下之后,我采用递归的方法来实现计算。以下代码使用java语言class Solution { public int sumNums(int n) { if(
2020-06-02 14:31:10
400
原创 在springboot中使用layui表格分页获取数据库数据
在springboot中使用layui表格分页获取数据库数据前端代码<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>table使用</title> <link rel="stylesheet" href="/layui/css/lay...
2020-01-19 22:06:08
2110
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅