- 博客(16)
- 收藏
- 关注
原创 数组相关总结
二分查找34. 在排序数组中查找元素的第一个和最后一个位置27.移除元素26.删除有序数组中的重复项283.移动零844.比较含退格的字符串977.有序数组的平方209. 长度最小的子数组904. 水果成篮76. 最小覆盖子串59. 螺旋矩阵维护两个指针first 和 lastfirst是target第一次出现的下标last是target最后一次出现的下标当我们用二分法找到target时,不知道这个target是不是第一次出现,所以我们要往前面找找看。
2024-12-20 17:37:29
779
原创 链表相关总结
203. 移除链表元素206.反转链表24. 两两交换链表中的节点19.删除链表的倒数第 N 个结点面试题 02.07. 链表相交142. 环形链表 II。
2024-12-20 17:32:55
987
原创 哈希表总结
242. 有效的字母异位词383. 赎金信49. 字母异位词分组438. 找到字符串中所有字母异位词349. 两个数组的交集350. 两个数组的交集 II202. 快乐数1. 两数之和454. 四数相加 II。
2024-12-18 12:29:23
549
原创 双指针总结
27.移除元素26.删除有序数组中的重复项283.移动零844.比较含退格的字符串977.有序数组的平方344.反转字符串151.反转字符串中的单词206.反转链表19.删除链表的倒数第 N 个结点面试题 02.07. 链表相交142. 环形链表 II15. 三数之和18. 四数之和。
2024-12-18 12:27:10
1108
原创 栈与队列总结
用i遍历整个数组 , 每个元素下标都要入队(i相当于窗口的右边界)(队列存下标是为了方便检查队首元素是否在当前窗口范围内)是否在目前的窗口内(当前窗口范围[i,i-k])总括号数量(字符串长度)为奇数,字符串无效。每次将队列头部元素对应的值加入答案合集。(形成窗口的意思是 i >= k-1) 入栈(后出栈数字+先出栈数字) 不匹配,字符串无效。这个队列每次都要检查。
2024-12-17 14:10:12
307
原创 二叉树总结
依赖于 (左孩子的左孩子 与 右孩子的右孩子 )以及(左孩子的右孩子和右孩子的左孩子)是否对称。如果左右子树都找到了 , 那么当前结点就是最近的公共祖先 ,返回当前节点。利用栈来模拟递归, 前序遍历:先访问节点,再访问左子树,再访问右子树。利用栈来模拟递归, 中序遍历:先访问左子树,再访问结点,再访问右子树。利用栈来模拟递归, 后序遍历:先访问左子树,再访问右子树,再访问结点。用前序遍历 和 后序遍历 ,反转每个结点的左右孩子 , 即可。如果一个结点的左右孩子都是空 , 那一定对称。
2024-12-12 14:56:33
947
原创 贪心算法合集
如果 当前元素 是波峰 上一个元素就是波谷, up = 上一个元素为波谷时摆动序列最大长度 + 1 如果 当前元素 是波谷 上一个元素就是波峰, down = 上一个元素为波峰时摆动序列最大长度 + 1。相当于(prices[3] - prices[2]) + (prices[2] - prices[1]) + (prices[1] - prices[0])肯定不能 , 之前从结点0出发,到结点1的时候还可能能给1剩点油量能, 现在从结点1出发, 油量直接从0开始, 更不可能到达结点4了。
2024-12-09 18:32:42
699
原创 动态规划总结
dp[i][j]由上方和左上方 或 左方 推导而来, 所以dp[i][0] 和 dp[0][j] 要初始化,dp[i][0] 在s[0,i-1]中空字符串出现的个数,都是1, dp[0][j] 在空串中t[0, j-1]出现的个数,都是0。即将word1[0, i-2]转化为word2[0,j-1], dp[i][j] = dp[i-1][j] + 1(等同添加)dp[1] = 0;使得word1[i-1] == word2[j-1], dp[i][j] = dp[i-1][j-1] + 1。
2024-12-05 16:48:14
1125
原创 依赖注入的方法
props标签包裹一组数据,数组每个元素的赋值用prop标签,属性key为Properties 的键,prop标签包裹的内容为Properties的值。map标签包裹一组数据,数组每个元素的赋值用entry标签,属性key为Map的键,属性value为Map的值。如果是一个存在的url,那就没问题。set注入,基于set方法实现的,底层会通过反射机制调用属性对应的set方法然后给属性赋值。上面的set注入方式就是注入的外部Bean,即bean定义到外面,在property标签中使用ref属性进行注入。
2024-09-02 16:15:44
878
1
原创 Spring程序详解
spring配置文件的名字是随意的,spring的配置文件可以有多个,在ClassPathXmlApplicationContext构造方法的参数上传递文件路径即可。spring是通过调用类的无参数构造方法来创建对象的,所以要想让spring给你创建对象,必须保证无参数构造方法是存在的。没有在类路径中的话,需要使用FileSystemXmlApplicationContext类进行加载配置文件。在spring配置文件中配置的bean可以任意类,只要这个类不是抽象的,并且提供了无参数构造方法。
2024-08-28 14:21:52
862
2
原创 OCP、DIP、IOC
UserController依赖UserServiceImpl,而UserServiceImpl依赖UserDaoImplForMySQL,这样就会导致。依赖倒置原则(Dependence Inversion Principle),简称DIP,主要倡导面向抽象编程,面向接口编程,不要面向具体编程,让。,下面改动了,上面的代码不会受到牵连。这样可以大大降低程序的耦合度,耦合度低了,扩展力就强了,同时代码复用性也会增强。,所谓牵一发而动全身。,可以用来降低代码之间的耦合度,符合依赖倒置原则。
2024-08-28 13:56:29
465
原创 国科大数据库新技术2023真题
4、从系统架构、数据模型、数据的一致性三个方面比较Amazon平台基础存储框架Dynamo和Goole云计算中分布式结构化数据表Bigtable的不同点。6、开发一个数据库管理系统的主要技术难点在哪里?对中国如何尽快开发自己的数据库管理系 统,给出你的建议?5、区块链的结构是什么?是如何做到其中的数据不可篡改的?2、在数据切分机制中,一致性哈希算法的基本原理是什么?(2)并行执行,什么样的结果可能是正确的。1、面向对象数据库技术的主要难点?3、大数据的4V特征是什么?(1)求分解p在F上的投影。
2023-11-21 20:46:31
395
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人