摘要: 在使用 BaseMapper提供的 CRUD接口时,我们为了使功能更强大,可以使用 QueryMapper来构造SQL语句。 1. 使用 eq QueryWrapper<Train> trainQueryWrapper = new QueryWrapper<>(); trainQueryWrappe 阅读全文
posted @ 2022-03-01 20:49 Acc22222222 阅读(2107) 评论(0) 推荐(0)
摘要: 以 Train 这个表为例: @Data @Builder @NoArgsConstructor @AllArgsConstructor @TableName(value = "train") public class Train { @TableId(value = "id", type = Id 阅读全文
posted @ 2022-03-01 16:31 Acc22222222 阅读(651) 评论(0) 推荐(0)
摘要: ss 阅读全文
posted @ 2022-02-27 15:42 Acc22222222 阅读(27) 评论(0) 推荐(0)
摘要: Mapper层的创建 如果想使用Mybatis-Plus的CRUD接口,我们必须要创建Mapper层,原理如下图所示: 我们继承 BaseMapper后,就可以使用MP为我们提供的各种 CRUD方法。具体如何调用可以直接参考官方网站给出的示例,下面展示UsersMapper接口,这个接口用于人员管理 阅读全文
posted @ 2022-02-26 18:41 Acc22222222 阅读(1538) 评论(0) 推荐(0)
摘要: 这两个都是同一种类型的问题:即斐波那契动态规划问题。 一. 对第一题进行分析 对于这种问题,我们首先得出动态规划的转移方程为:f[n] = f[n-1] + f[n-2],其中 f[0] = 0,f[1] = 1。但是如果我们就这样算,肯定会超出时间限制,因此我们可以用一个数组 dp 来记录算出的斐 阅读全文
posted @ 2022-01-06 14:19 Acc22222222 阅读(35) 评论(0) 推荐(0)
摘要: 第一次接触二叉树的递归类型的题目。 一般对于这种题目,我们需要做的是:1. 写一个递归方法。 2. 在主方法里调用这个递归方法。 一. 写一个递归方法 对于递归方法,我们可以分为两部分 —— 1. 基本情况 2. 特殊情况。 基本情况实际上就是递归的退出条件,而特殊情况就是进行递归。 对于这个题目, 阅读全文
posted @ 2022-01-06 12:00 Acc22222222 阅读(39) 评论(0) 推荐(0)
摘要: 对于这种问题,我们第一个需要考虑的问题是:如何对二叉树进行层次遍历。可以使用队列来对二叉树进行层次遍历,先将根结点入队,然后进入while循环,每次出队一个节点进行操作,然后把它对应的左节点和右节点入队(注意顺序不能变)。 然后,我们第二个需要考虑的问题是:怎么样把遍历次数限制在一行内。如果我们不进 阅读全文
posted @ 2022-01-06 11:26 Acc22222222 阅读(20) 评论(0) 推荐(0)
摘要: 在 剑指 Offer 53 - II. 0~n-1中缺失的数字 中,我们可以把数组分成 左数组和右数组,很明显这道题也可以分成左右数组,但是在那一道题中,我们可以用索引判断元素是在左数组中还是在右数组中,那么这道题该如何判断呢? 声明 left,right 分别为数组的左右两端。m = (left+ 阅读全文
posted @ 2022-01-06 10:57 Acc22222222 阅读(23) 评论(0) 推荐(0)
摘要: 这个题当然可以用遍历的方法,但是我们只要看到递增排序数组,就应该想到用二分法去做。但是这个题跟其它的二分法不是很一样,它没有明确要查找的target 或者左边界,右边界等,而是数组的中间有一个断点。我们可以根据这个断点把数组分为两部分:左数组和右数组,然后我们可以发现,左数组的所有元素的值都和他们的 阅读全文
posted @ 2022-01-03 16:17 Acc22222222 阅读(30) 评论(0) 推荐(0)
摘要: 很明显,遍历一遍数组,用O(N)的时间复杂度是可以做出来的,但是我们在做这种排序数组的题目中,可以用二分法把时间复杂度降低到O(logN)。 但是我们会发现,正常的二分查找法是查找数组里是否有某个数,那么我们就不能用普通的二分查找,而需要使用二分查找来查找边界。我们可以返回target的右边界(第一 阅读全文
posted @ 2022-01-03 15:17 Acc22222222 阅读(39) 评论(0) 推荐(0)