自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SpringBoot添加过滤器

首先过滤器和拦截器都能实现请求的筛选(过滤或者拦截),然后根据自己的业务需求,添加自己的逻辑,保证请求往后走的时候数据能满足自己的需求。同时呢,他们又都能终止请求流(过滤器只要不在过滤链中往后传request就形;拦截器返回false。

2023-12-04 19:38:23 435

原创 Spring Filter深度解析

FilterDef是Filter的定义类,filterClass表示过滤器的定义类super();} else {= null)// 创建 并初始化 Filter 对象try {} else {ApplicationFilterConfig的创建过程就是通过实例化FilterDef的filterDef的filterClass的类并调用Filter的init方法初始化Filter对象。

2023-11-26 22:18:12 514

原创 Servlet简介

servlet就是一个java应用程序,实现了servletAPI规范的java应用程序就是一个servlet,主要是用来处理来自web浏览器或者其他HTTP客户端的请求,常常跟我们的业务程序或者我们的数据对接,相当于一个中间层的作用,动态地生成内容给服务器;

2023-11-20 00:20:59 108

原创 会话跟踪技术

Cookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问。JavaEE提供HttpSession接口,来实现依次会话的多次请求间数据共享功能。Cookie和Session都是来完成一次会话内多次请求间数据共享的。Session:服务端会话技术,将数据保存在服务端。Session是基于Cookie实现的。

2023-11-12 19:14:52 80

原创 JDBC概述与基本操作

JDBC : 就是使用java用语言操作关系型数据库的一套API。

2023-11-06 13:33:49 51

原创 SSM架构

SSM框架是spring、spring MVC 、和mybatis框架的整合.标准的SSM框架有四层,分别是dao层(mapper),service层,controller层和View层。使用spring实现业务对象管理,使用spring MVC负责请求的转发和视图管理,mybatis作为数据对象的持久化引擎。View层:主要和控制层进行紧密的联系,负责前端页面的表示.负责呈现数据给客户端,将业务逻辑的结果转化为HTML、JSON、XML或其他格式,以便用户浏览。

2023-10-29 19:09:50 259

原创 操作系统中的内存管理器

单道程序已过时,需了解.

2023-10-18 20:09:39 56

原创 算法训练DAY48|力扣198.打家劫舍&&力扣213.打家劫舍Ⅱ&&力扣337.打家劫舍Ⅲ

每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。解释:偷窃 1 号房屋 (金额 = 2), 偷窃 3 号房屋 (金额 = 9),接着偷窃 5 号房屋 (金额 = 1)。给定一个代表每个房屋存放金额的非负整数数组,计算你 在不触动警报装置的情况下 ,今晚能够偷窃到的最高金额。解释:你不能先偷窃 1 号房屋(金额 = 2),然后偷窃 3 号房屋(金额 = 2), 因为他们是相邻的。小偷又发现了一个新的可行窃的地区。

2023-06-26 19:51:36 60

原创 算法训练DAY46 |力扣139.单词拆分

今天就对背包问题正式告别了,学习了01背包,完全背包和多重背包的问题;

2023-06-26 19:03:17 75

原创 算法训练DAY 45|力扣70.爬楼梯&&力扣322.零钱兑换&&力扣279.完全平方数

完全平方数 是一个整数,其值等于另一个整数的平方;递推公式:dp[j] = min(dp[j - coins[i]] + 1, dp[j]);递推公式:dp[j] = min(dp[j - i * i] + 1, dp[j]);给你一个整数 n ,返回 和为 n 的完全平方数的最少数量。递推公式:dp[i] += dp[i - nums[j]dp[j]:凑足总额为j所需钱币的最少个数为dp[j];dp[j]:和为j的完全平方数的最少数量为dp[j];dp[i]:爬到有i个台阶的楼顶,有dp[i]种方法。

2023-06-26 18:22:51 42

原创 算法训练DAY44 |力扣518.零钱兑换Ⅱ&&力扣377.组合总和

今天是完全背包问题,完全背包和01背包的区别在于物品的数量是无限的,所以遍历的顺序会有所不同;

2023-06-26 17:48:48 160 1

原创 算法训练DAY43 |力扣1049.最后一块石头的重量Ⅱ&&力扣494.目标和&&力扣474.一和零

其他满足题意但较小的子集包括 {"0001","1"} 和 {"10","1","0"}。解释:最多有 5 个 0 和 3 个 1 的最大子集是 {"10","0001","1","0"} ,因此答案是 4。输入:strs = ["10", "0001", "111001", "1", "0"], m = 5, n = 3。dp[i][j]:最多有i个0和j个1的strs的最大子集的大小为dp[i][j]。dp[i][j]:最多有i个0和j个1的strs的最大子集的大小为dp[i][j]。

2023-06-25 22:57:44 40

原创 算法训练DAY42|力扣416.分割等和子集

今天正式学习了01背包,知道可以用一维和二维数组分别来表示dp数组来解决背包问题,对于初始化和遍历顺序,不同的数组的方式都不一样,初始化需要搞明白内部的逻辑进行初始化,当然,最重要的还是递推公式;

2023-06-20 22:00:44 57 1

原创 算法训练DAY41|力扣343.正数拆分&&力扣96.不同的二叉搜索树

今天的两道题都很难很难,自己想了很久都没有想清楚思路,动态规划的核心还是找到递推关系,有时候自己需要动手做一做才能找到规律;

2023-06-19 22:33:02 39

原创 算法训练DAY39 |力扣62.不同路径&&力扣63.不同路径Ⅱ

今天做了两道不同路劲的题目,题目本事不是很难,思路有了,代码很快就写出了了,更重要的是理解dp算法的思想;

2023-06-19 21:20:29 526

原创 算法训练DAY38||力扣509.斐波那契数&&力扣70.爬楼梯&&力扣746.使用最小花费爬楼梯

今天正式开始了动态规划算法,也就是dp, 动态规划问题就是,当前状态是由上一个状态推到出来的,在解题时核心就是确定递推公式;

2023-06-19 19:49:43 63

原创 算法训练DAY32|力扣122.买卖股票的最佳时机Ⅱ&&力扣55.跳跃游戏&&力扣45.跳跃游戏Ⅱ

今天三道贪心算法的题不是很难,主要是对思路的考虑和想法,代码本身上没有什么大的难度,买卖股票可是说是很经典的题目了,贪心算法的应用还是很广泛的;

2023-06-15 23:21:06 52

原创 算法训练DAY31|力扣455.分发饼干&&力扣376.摆动序列&&力扣53.最大子序和

今天正式开始贪心算法的学习,贪心算法没有一个定式,是通过求得局部得最优解来求解整体最优的一种算法,今天题不难,但是理解思想很重要;

2023-06-09 18:14:23 61

原创 算法训练DAY30

首先,回溯是一种什么暴力的方法,就是穷举所有的可能,所以回溯的一种一点都不高效的方法,那为啥还要使用回溯算法呢,因为有一些问题只要能找出答案就以及很不错了;回溯能解决的问题都有组合问题;同时回溯法如何单纯从字面上来理解的话是十分的抽象的,基本所有能用回溯法解决的问题,我们都可以抽象成一棵树,具体根据不同的问题,我们可以抽象成不同的树,分别中深度和宽度来做不同的解释;这三个问题的难度都什么大,特别是最后一个解数独的问题;总之,学了这么多的回溯算法解决的实际问题,今天来认真总结一下;

2023-06-08 23:08:56 29

原创 算法训练DAY29 |力扣491.递增子序列&&力扣46.全排列Ⅱ&&力扣47.全排列Ⅱ

回溯算法的效率虽然很低很低,但是对于排列等这些问题,用for循环是很难处理的,所有我们只能采用回溯搜索法来穷举所有的可能;

2023-06-07 21:39:18 104

原创 算法训练DAY28 |力扣93.复原IP地址&&力扣78.子集&&力扣90.子集Ⅱ

这3个题,实质上是两个问题,一个数切割字符串的问题,另外一个是给定数组,寻找它的所有子集的问题;这种类型的问题都可以用回溯搜索法来做,找出所有的可能;

2023-06-06 21:57:11 94 1

原创 算法训练DAY27|力扣39.组合总和&&力扣40.组合总和Ⅱ&&力扣131.分割回文串

回溯算法在组合问题的应用是还是很方便且有优势的;

2023-06-06 01:43:47 84 1

原创 算法训练DAY25|力扣216.组合总和Ⅲ&&力扣17.电话号码的字母组合

回溯算法在解决组合问题的时候有奇效,可以避免冗余for循环暴力循环;

2023-06-05 16:06:20 99 1

原创 算法训练DAY 24| 力扣77.组合

今天开始学习回溯算法,回溯本质上是一种暴力的解法,他是穷举所有的组合,然后在组合中寻找的符合要求的目标的一种算法;回溯算法的核心就是递归,回溯算法的问题都可以抽象为树状结构,集合的大小构成了树的宽度,递归的深度,构成了数的深度;

2023-06-02 22:58:43 99 1

原创 算法训练DAY8 |力扣344.反转字符串&&力扣541.反转字符串II&&力扣剑指Offer 05.替换空格&&1力扣151.翻转字符串里的单词&&力扣剑指Offer58-II.左旋转字符串

首先,对双指针的应用又多了一个,双指针可以用来反转字符串,其次,清楚的直到c语言有很多不足之处,真的很不适合用来刷题,现成能用的库函数真的很少,刷题很不方便,5个题,核心都是反转字符串,对该操作有了很深刻的理解和认识;

2023-05-23 20:36:05 97

原创 算法训练DAY 7|力扣454.四数相加&&力扣383.赎金信&&力扣15.三数之和&&力扣18.四数之和

今天做的都感觉很难,一方面,对Java是不特别熟悉,map和set的创建和使用不会,三数之和 四数之和弄懂了思路,代码照着敲的,对一些具体的细节实现,比如去重,不是很明白,有空一定2刷;

2023-05-17 19:48:18 90

原创 算法训练DAY 6|力扣242.有效字母的异位词&&力扣349.两个数集的交集&&力扣202.快乐数&&1.两数之和

c语言刷不动了,全部用java刷的;有现成可以用的set结构和map结构,哈希算法主要使用来查找元素,可以大幅度减少时间复杂度,避免了多重循环的高时间复杂度;累死啦!

2023-05-17 00:40:10 65

原创 算法训练DAY 4|力扣24.两两交换链表中的结点&&力扣19.删除链表的倒数第N个结点&&力扣面试题02.07.链表相交&&力扣142.环形链表

今天对链表的一些其他操作有了更深刻的理解,在做删除链表的倒数第N个结点的时候,又结合了前面学过的双指针,在操作的链表的同时,对双指针的思想有了更清楚的认识;

2023-05-15 15:38:23 73 1

原创 算法训练DAY 3|力扣203.移除链表元素&&力扣707.设计链表&&206.反转链表

链表是最基础的数据结构,思路上都没有什么大的问题,主要就是基础代码能力,了解链表这样数据结构,对于一些链表的基础操作还不是很熟练,对于一些小细节处理的还不是很到位,还需要多加练习;

2023-05-14 21:53:56 117 1

原创 算法训练DAY 2|力扣977.有序数字的平方&&力扣209.长度最小的子数组&&力扣59.螺旋矩阵II

今天真的特别特别忙,因为是满课,还有很多其他的事情,所有也只做了这3个题;首先,对双指针的用法有了更深刻的理解,就是在滑动窗口的应用中,用两个指针分别遍历一遍数组就可以大幅度减少时间复杂度;最后,就是对最后的螺距矩阵花了很长的时间,在思路上了理解没有任何问题,就是纯纯的模拟的,但是在循环体中对于很多边界的细节处理需要十分谨慎注意,最后在提交代码的时候,用c语言二维数组传参有遇到了很大的问题,在做这个题的同时,对于c语言的基础又更加的巩固,深刻的弄明白了二维数组传参问题;

2023-05-12 00:13:40 128

原创 算法训练DAY 1|力扣 704.二分查找&&力扣 27.移除元素(双指针)

力扣 704 .二分查找力扣 27.移除元素

2023-05-10 16:57:28 500 1

空空如也

空空如也

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

TA关注的人

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