- 博客(77)
- 收藏
- 关注
原创 Vue前端路由合并
还存在着问题,就是单纯这样修改的话,页面跳转的时候不会刷新页面,vue生命周期钩子函数不会被调用,也就是数据不会改变,这不是我们想要的。3,因为是同一个组件,怎样判断是哪个url调用的呢?需求:销售订单分为 “进行中订单” 和 “已完成订单”,之前是两个vue组件,两个页面,现在想合并成一个,但展现出的数据不同(分别是进行中的和已完成的订单)。现在页面可以实现刷新了,钩子函数被调用了。钩子函数被调用就可以想干吗就干吗啦~~~今天收到一个需求,需要将两个url跳转到同一个页面,即跳到同一个组件。
2023-05-12 15:13:24
472
1
原创 1638. Count Substrings That Differ by One Character
数组sameSubStrs和diffSubStrs关系如下: i=2,j=2时,s[0:2] = t[0:2],则sameSubStrs[i][j] = 3, 即s中"bac","ac","c" 和t中对应的"bac","ac","c"可以组成3个相等的子字符串对。=t[j], diffSubStrs[i][j] = sameSubStrs[i-1][j-1] + 1. sameSubStrs[i-1][j-1]来说,构成diffSubStrs[i][j]的子字符串对分别为:"问一共有多少种找法。
2023-04-23 12:41:38
454
原创 Hibernate validator注解及Spring Boot自定义Hibernate Validator注解校验(超级详细)
自定义Hibernate Validator校验注解,首先它是注解,所以我们先来看看Spring Boot如何自定义注解。自定义注解,需要用到元注解,元注解就是注解注解的注解。Target:描述了注解的对象范围,取值在java.lang.annotation.ElementType定义,常用的包括:METHOD:用于描述方法PACKAGE:用于描述包PARAMETER:用于描述方法变量TYPE:用于描述类、接口或enum类型FIELD:用来描述字段Retention:表示注解保留时间长短。
2023-01-01 08:11:12
4911
3
原创 Spring Boot全局异常处理器(原理及使用详解)
软件开发springboot项目过程中,不可避免的需要处理各种异常,spring mvc架构中各层会出现大量的try{...} catch{...} finally{...}代码块,不仅有大量的冗余代码,而且还影响代码的可读性。这样就需要定义个全局统一异常处理器,以便业务层再也不必处理异常。Spring在3.2版本增加了一个注解@ControllerAdvice,可以与@ExceptionHandler、@InitBinder、@ModelAtribute等注解配套使用。
2022-12-23 12:58:46
14015
2
原创 yolov7模型部署——环境搭建(python 导出onnx模型,c# OnnxRunTime-GPU版调用) 踩坑记录
yolov7模型部署(python 导出onnx模型,c# OnnxRunTime-GPU版调用) 踩坑记录
2022-11-04 19:34:26
11190
38
原创 652. Find Duplicate Subtrees
思路:最暴力的办法是遍历整棵树,每遇到一个节点重新遍历树,寻找是否有与其相同的子树结构。时间复杂度是O(n^3)。因此,为简化时间复杂度,可以在遍历时将其转化成字符串数组保存起来,每次遍历到新节点只需比较是否有与其相同的字符串即可。时间复杂度简化为O(n^2)。用hashmap来保存字符串,value的值记录字符串出现的次数,只有曾经出现一次时才将子树根节点的指针保存在结果中,避免具有3个或3个以上相同子树结构时结果重复。题目:给定一个二叉树,求里面完全相同的子树。返回子树根节点的集合。
2022-10-09 11:19:51
315
原创 863. All Nodes Distance K in Binary Tree
思路:首先需要找到给定的节点位置。距离给定节点target 为k的节点可能在target之下(子孙辈节点),也可能在target之上(祖辈节点),也可能在target旁边。因此需要两种操作,一种向下寻找距离给定节点为k,一种向上寻找。向下寻找比较简单,只找到距离为k的节点并放入结果中即可。向上寻找需要逐层寻找,比如向上一层找到target的parent后,需要再找到旁支与partent距离为k-1的所有节点。题目: 给定一个二叉树,和其中一个节点。求与给定节点距离为k的所有节点的值。路径不一定要过根节点。
2022-09-16 15:22:01
586
原创 894. All Possible Full Binary Trees
采用动态规划方法,将n-1个节点分为左右子节点。采用递归方法分别求出从1到n-2个节点的完全二叉树结构,将其置于根节点的左右子树位置。小编使用一个vector subTree结构来代替hashmap,subTree[i]即为包含i个节点的所有完全二叉树结构。为保证树结构为完全二叉树,i为奇数。题目:给定正整数n。求包含n个节点的所有完全二叉树的结构。每个节点值为0. 完全二叉树是一个二叉树,其所有节点包含0个或2个子节点。
2022-09-16 12:51:34
267
原创 1530. Number of Good Leaf Nodes Pairs
思路:叶子不可能直接与叶子相通,必然是通过一个共同的父结点或祖辈节点,需要记录以每个节点作为根节点的子树下有几个叶子节点,且叶子节点离当前子根节点的距离。可递归为计算其左节点下的叶子节点和其右节点下的叶子节点,计算其所有左叶子节点和所有右叶子节点的距离(为其左叶子节点距离当前节点的距离+右叶子节点距离当前节点的距离),如距离小于给定distance,则更新结果。用hashmap记录。注:hasmap的key记录当前子节点所有叶子节点的距离,value记录某一距离的叶子节点的个数。
2022-09-07 11:04:56
263
原创 655. Print Binary Tree
思路:先判断二叉树的深度,以此生成一个空的字符串数组。数组行数为二叉树的层数,列数为pow(2, height) -1。用队列来记录一个满二叉树,空着的地方用NULL表示。题目:给定一棵二叉树,生成一个字符串数组。
2022-09-07 10:53:00
177
原创 1372. Longest ZigZag Path in a Binary Tree
思路:递归,zigzag路不一定从根节点开始,因此需要记录以每个节点开始的最长zigzag路径,从底部往上回溯。因此从上往下时需要用direction(dir)记录每个节点是左节点还是右节点。如果是左节点(-1代表左节点),则从底部往上时需选择右子节点的zigzag路,如果是右节点(1代表右节点),则需选择其左子节点的zigzag路。根节点用0代表,则选择左子节点或右子节点最长的那条路。题目:给定一棵二叉树,找其中最长的zigzag路。
2022-09-02 09:10:04
527
原创 96. Unique Binary Search Trees
思路:由于是二叉搜索树,因此只要根节点确定了,左右子树节点个数也就确定。从1到n遍历,分别从1到n作为根节点,求左右子树的结构个数相乘。最后的加和即为结果。为减少重复运算,用vector数组dp记录i个节点的结构数。题目:给一个正整数n,求由节点1~n组成的二叉搜索树结构有几个。...
2022-09-01 15:54:25
162
原创 919. Complete Binary Tree Inserter
思路:容易错的点是初始化时不只是一个根节点,可能已经是一棵树。用queue来保存所有不完全的子节点。题目:实现一个类,可以往二叉树中插入节点,使得二叉树保持完全二叉树。
2022-08-17 13:04:23
143
原创 1325. Delete Leaves With a Given Value
题目:给定一个二叉树,将与给定target值相等的叶结点删除。注意,删除之后其父结点可能变为叶结点。思路:一看就是递归,从下网上删就完了。
2022-08-17 12:26:46
188
原创 998. Maximum Binary Tree II
思路:因为val是在构建二叉树的数组最后,因此在二叉树中往右子树找,找到最后一个比val大的节点。将其右子树改为新建节点的左子树,新建节点为其右子节点。题目:创建最大树,给定一颗最大二叉树,和一个值val, 将val以最右的形式插入二叉树。...
2022-08-17 11:55:21
205
原创 1457. Pseudo-Palindromic Paths in a Binary Tree
思路:由于节点是由1~9的数字组成,用一个长度为10的vector保存每条路个数字出现的次数。题目:给定一个二叉树,每个节点都是由1~9的数字组成,问能组成伪回文的线路有几条。
2022-08-17 10:56:44
214
原创 230. Kth Smallest Element in a BST
题目:给定一个二叉查找树,返回第K小的值。思路:树的inorder遍历的变体。
2022-08-12 12:05:29
180
原创 1110. Delete Nodes And Return Forest
题目: 给定一棵二叉树,和一个数组。删除树中值等于数组元素值的节点。用queue来保存所有节点。
2022-08-12 11:50:22
336
原创 1123. Lowest Common Ancestor of Deepest Leaves
思路:需要有一个全局变量记录整个子树的最深深度,此变量再遍历时是实时更新的。同时需要局部变量记录以当前子节点为根的子树所包含叶子的深度。如果当前节点左子树与右子树深度相同,且同为最深深度,则该子节点即为我们所求。因此,单次遍历,通过递归所隐含的栈结构来记录从上往下遍历树时的深度,从下往上时回传当前节点子辈的最深深度。判断当前节点左右子辈的最深深度是否相等,且是否等于整棵树的最深深度。题目:给定一个二叉树,找 最深两个叶子的最低公共祖先。......
2022-08-12 10:46:29
367
原创 1305. All Elements in Two Binary Search Trees
思路:inorder traversal的变体。两个二叉搜索树一起inorder遍历。题目:将两个二叉搜索树的元素按从小到大排列。
2022-08-05 11:43:11
74
原创 1008. Construct Binary Search Tree from Preorder Traversal
思路很像,用栈来保存每个节点,不同的是,本题是以大小来判断左右子树,而654是以位置来判断左右子树。题目:给定一个二叉查找树的preorder排序数组,让还原出这个二叉查找树。时间:O(N), 空间:O(N)...
2022-08-05 10:34:23
157
原创 654. Maximum Binary Tree
方法二,因为数组中每个值都会是树中的一个节点,因此从头往后遍历,每个值都生成一个树节点。用一个栈维护着树结构,栈中树节点的值是单调递减的。如遍历到的值比栈顶节点值小,直接加在栈顶节点的右子树上。如果遍历到的值比栈顶节点大,则代表新遍历到的值是栈顶节点的父辈或祖辈~。pop出的节点位于新节点的左子树上。要求树顶位置的值大于左右子树的值,而且左右子树也符合这个规则。时间复杂度:O(N^2), 空间复杂度:递归用到的栈空间不算的话,为O(1)方法一,当然是笨方法,递归,每次找数组中的最大值就好了。...
2022-08-05 10:07:18
108
原创 2193. Minimum Number of Moves to Make Palindrome
思路双指针+贪心算法。指针i,j最开始指向首位和尾位,如果i位和j位相等,则直接i++,j--。如果不相等,则一直从前找到与s[j]相等和从后找到与s[i]相等的位置。比较哪边需要挪动的步骤少则挪动哪步。题目给定一串字符串,每步两个相邻的字符可以呼唤,问最少换多少步可以将字符串变成回文。假设字符串肯定可以变成回文。...
2022-07-18 11:39:02
134
原创 1537. Get the Maximum Score
直接找两个数组每相邻两个相等值之间的和。结果加上最大和即可。数组是严格递增的,因此不存在相等的情况,使得题目简单多了。题目给定两个数组,从前往后遍历,在数组值相等时可以交换数组遍历。遍历过的值相加,问最后最大值路径;...
2022-07-15 11:18:29
128
原创 1793. Maximum Score of a Good Subarray
思路双指针,难点在如果维护指针之间的最小值,使得不用每次遍历i到j,能不能每次挪动指针的时候用时间复杂度O(1)来确定i到j之间的最小值呢?因为题目有约束i=k。因为指针i,j移动的话,如果仍然包含最小值,min(nums[i]...nums[j])不变,而(j-i+1)变小了,是不会找到比当前值大的结果的。题目给定数组,找到一组子序列(i~j),其中i...
2022-07-15 10:52:28
233
原创 719. Find K-th Smallest Pair Distance
每次取中间距离mid,计算每个元素距离小于等于mid值的元素值总和,如果比k大,取左半部分。比k小,则距离需增大取右半部分。注意在取左半部分的时候为使得最后求出的距离肯定是数组中真实存在的距离,需要end=mid,不能end=mid-1。先将数组排序,然后每相邻两个的距离进priority_queue,queue中保存三个信息{nums[end]和nums[start]距离,end,start},按从小到大排序。看,明明也是NlogN的时间复杂度,为啥这个不超时,二分法的logN了不起啊?...
2022-07-15 09:11:24
110
原创 1163. Last Substring in Lexicographical Order
Given a string , return the last substring of in lexicographical order.Example 1:Input: s = "abab"Output: "bab"Explanation: The substrings are ["a", "ab", "aba", "abab", "b", "b
2022-07-13 13:16:57
153
原创 295. Find Median from Data Stream
The median is the middle value in an ordered integer list. If the size of the list is even, there is no middle value and the median is the mean of the two middle values.Implement the MedianFinder class:Example 1:Input["MedianFinder", "addN
2022-07-12 17:48:11
169
原创 1147. Longest Chunked Palindrome Decomposition
You are given a string . You should split it to k substrings such that:Return the largest possible value of .Example 1:Input: text = "ghiabcdefhelloadamhelloabcdefghi"Output: 7Explanation: We can split the string on "(ghi)(abcdef)(hello)
2022-07-12 11:19:13
76
原创 2300. Successful Pairs of Spells and Potions
You are given two positive integer arrays and , of length and respectively, where represents the strength of the spell and represents the strength of the potion.You are also given an integer . A spell and potion pair is considered successful if the
2022-07-12 11:00:28
390
原创 457. Circular Array Loop
You are playing a game involving a circular array of non-zero integers . Each denotes the number of indices forward/backward you must move if you are located at index :Since the array is circular, you may assume that moving forward from the last element p
2022-07-12 10:37:35
103
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人