- 博客(89)
- 收藏
- 关注
原创 解决 若以-Ruoyi-访问验证码失败 出现404 或者 Proxy error: Could not proxy request /captchaImage ...等问题
若依框架:登录时如何解决404和验证码问题_若依框架登录失败null-优快云博客
2024-10-24 16:14:13
824
原创 Spring Cloud-Nacos版 学习理解
但是你付款的时候,你的球拍购买成功了,但羽毛球购买失败了,没关系,贴心的商店经理Seata,把你购买成功的球拍也退掉了,直达两个一起购买成功了,经理才没退掉你的球拍或者球。Riddon 是 负载均衡组件,当部署多个Nacos注册了相同功能的服务的时候,比如查询员工人数功能,可以在项目上,设置当调用者访问这个服务时,按某个模式均衡访问,比如100次访问,50%访问在A-nacos的服务上,50%访问在B-nacos的服务上,两个nacos部署在不同的服务器,相当于用两台服务器代替一台服务器分担了访问压力。
2024-10-19 18:34:29
904
1
原创 mysql5和mysql8同时存在
三篇文章解决主要注意,1.两版本的my.ini的端口不一致一个3307一个33062.位置不再在同一目录,比如一个在x目录下,一个在x/x目录下3.如果是原来是5.x的mysql版本,新装8的mysql版本,需要注意先备份原来的数据库数据,因为很容易出错,然后很麻烦4.同时原来是5.x,新装8,很容易新装8的版本初始化的时候,按原来系统变量5的路径去走,这个时候需要删除原来5.x在window高级系统变量设置的路径或者更改注册表内的地址,5.x和8.x只设置这个就得了。
2024-05-14 18:48:00
720
1
原创 npm卸载不掉的解决方案
实际上根本不在这个地方,这个是我安装的6.14.12版本的npm的地方,我说我怎么怎么重装怎么导包都不行呢,偷偷隐藏在这个目录里面,这个是我之前安装node.js的地方,一开始下的是node18,npm是10.5.0。有之前安装过node但是版本不合适又删除的兄弟,可以去看看之前所有之前安装过node的目录有没有这样的文件存在,删了应该就好了。我的npm版本就好了,真服了这个折磨王,偷偷隐藏起来,给系统提供缓存。真服了,npm卸载不掉绝对是有缓存存在,用where npm查到d盘。不管怎么重装重启都报错。
2024-03-29 20:15:27
1088
原创 跳过mysql权限验证来修改密码-GPT纯享版
6.当 MySQL 服务器重新启动后,你应该能够以 root 用户身份登录,而不需要密码。这个方法将会暂时绕过 MySQL 的权限验证,允许你以 root 用户身份登录并重置密码。7.现在,你可以使用 SQL 命令来更改 root 用户的密码。,这个选项告诉 MySQL 服务器跳过权限验证,允许任何用户连接而不需要密码验证。选项并重新启动 MySQL 服务器,以恢复正常的权限验证机制。选项并重新启动 MySQL 服务器,以恢复正常的权限验证。由来:输入日志里记载的新密码总报错,那我就不输了。
2024-03-22 18:34:55
1148
原创 贪心 55. 跳跃游戏 45.跳跃游戏 II
求出遍历下标的最大覆盖范围内所有下标可以走的最大距离,比如从下标0开始,如果下标的范围不能覆盖末尾,那么遍历下标0覆盖范围的所有下标,比如下标1,下标2,看看当下一步走到下标1和下标3的时候,可不可以让整体的跳跃覆盖范围到末尾,如果这样覆盖范围到末尾了,比如下图1,它的值是3覆盖到末尾了,那么说明这里就是最短路径。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后 跳 3 步到达数组的最后一个位置。当遍历完,最大覆盖范围的i大于等于末尾的i,判断可以,否则不行。
2024-03-17 17:06:33
1369
原创 Spring Cloud - Eureka版-学习理解
一个项目部署在一台服务器上,服务器负荷过大,可能导致项目崩溃,这个时候把项目的各个服务切开成一个个模块,比如支付宝切分成支付模块,用户模块这样,分别在不同的服务器上启用,可以分散服务器压力。因为当需要调用多个微服务时候,调用不同的微服务可能会遇见麻烦的跨域问题,同时还要记住每一个微服务的网络地址才能进行调用,很麻烦,这个时候用网关,可以不用记住不同微服务的ip地址,请求直接统一访问网关,网关在自行判断访问对应的api服务。熔断:微服务报错时,指定的进行的代码操作,比如微服务出错了,跳转到指定的错误页面。
2024-03-17 16:59:56
1405
原创 贪心 1005.K次取反后最大化的数组和
局部:如果数都转成正数了,还留下来反转次数没用,那就需要用K转化绝对值最小的正数了,这样对总和影响最小,而且因为可以反复反转同一个元素,所以如果是留下来的次数是偶数可以,转成正的又转过来所以,直接清空次数,是奇数,就转一次最小的,这样影响最小。全局:装完负数后,剩下来的L如果是奇数只反转最小的,偶数直接清空,这样总和增加最多,消耗最小。局部:利用K的次数,把数组中绝对值大的负数优先转成正的,增大总和。全局:每一次都把绝对值大的负数转成正数,对全局增加总和的效力最大。要求返回完成反转后能返回的数组最大总和。
2023-11-30 19:58:01
469
原创 贪心 53. 最大子序和 122.买卖股票的最佳时机 II
换成贪心思路,是由最终利润可分解推导出来的,比如下图,最终利润12是5-1,10-5,6-3相加的来的,收集每一天的正利润,把正利润相加就是最优交易操作的来最大利润(第一天没有利润,因为没有第0天,所以利润从第二天开始看)当子数组总和(连续和)为负数的时候,进入到下一个循环,在暴力思路的基础上,比如-1,2,循环到-1的时候,总和计算为-1,看看比不比已经记录的总和大?当前“连续和”为负数的时候立刻放弃,从下一个元素重新计算“连续和”,因为负数加上下一个元素 “连续和”只会越来越小。
2023-11-29 17:12:57
456
原创 贪心 376. 摆动序列
坡度有变化指,满足(preDiff <= 0 && curDiff > 0) || (preDiff >= 0 && curDiff < 0)的条件,result(波动记录)++的时候,没改前会记录上图2-2-2的这个节点,改了后,不会记录这个点,因为从第一个1到2的时候,2往后走就不更新了,一直是prediff>0的状态,这个时候到中间那个2-2-2,就不会更新,因为没更新prediff>0,curdiff>0不满足条件不更新。在记录波动,即if()外面,比如[2,5],这个时候不能统计它的波动,因为。
2023-11-28 18:11:16
1111
原创 华为obs上传下载-Java版 2023-11-23
弄了半天,老师帮弄成功了,经过同意,分享到网上,希望能帮助更多人,至于怎么弄的,我也不知道。创建idea项目后,项目结构,对应文件没有的创一个。
2023-11-22 20:14:26
1720
原创 贪心 455.分发饼干
小朋友胃口值数组g[i],饼干尺寸数组 s[j],当饼干尺寸s[j]大于等于g[i]的时候,对应小朋友被满足,小朋友每一个最多一块饼干 ,求给定条件下最多被满足的小朋友数量。具体做法就是饼干数组和小孩数组排序,然后从后向前遍历小孩数组,用大饼干优先满足胃口大的,并统计满足小孩数量。也就是从大到小尺寸饼干满足胃口从大到小排序的小孩,饼干没满足小孩了,就下一个小孩,没小孩了就返回结果。如果饼干尺寸大于等于胃口,结果+1,饼干向小尺寸继续遍历,胃口向小胃口小孩继续遍历。
2023-11-16 15:24:46
227
原创 647. 回文子串 516.最长回文子序列
说明s[i]和s[j]的同时加入 并不能增加[i,j]区间回文子序列的长度,那么分别加入s[i]、s[j]看看哪一个可以组成最长的回文子序列。这个dp[i + 1][j]表示加了s[j]的最大回文子序长度,可以说加了s[j]的最大长度。这个dp[i][j - 1]表示加了s[i]的最大回文子序长度,可以说加了s[i]的最大长度。首先要考虑当i 和j 相同的情况,从递推公式:dp[i][j] = dp[i + 1][j - 1] + 2;
2023-11-14 16:38:17
218
原创 53. 最大子序和 392.判断子序列 115.不同的子序列 583. 两个字符串的删除操作 72. 编辑距离
字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。给定一个整数数组,求最大连续子序列和。(至少包含一个元素)给定字符串 s 和 t ,判断 s 是否为 t 的子序列。
2023-11-10 11:22:36
112
原创 674. 最长连续递增序列 718. 最长重复子数组 1143.最长公共子序列 1035.不相交的线
这里的条件,如果nums1的 i 和nums2的 j 在遍历的时候,nums1[i-1]和nums2[j-1]的值相等了,后续dp就+1,相当于连续而且上一步相等就+1的意思,我尝试了下A加了9,1,B加0,1来推导。这里的dp[i][j],也是继承dp[i-1][j-1]但是数组推导的结果变成了1,大概意思就是这段代码记录下了每一个连续的公共子序列长度。看见图里,但两个数组遇见相同的值了,就长度就+1,其他的都是0,可以看出dp[i][j]的状态继承dp[i-1][j-1]而来。
2023-11-09 21:47:25
282
原创 300.最长递增子序列
最小的dp数组都初始化为1,然后比较一下之前的num[i]的值,又没有比当前遍历的dp[i] 对应的num[i]的值小的,有的话就在他的基础上+1。依靠定义直接观察可以发现,nums[0]=10对应dp[0]=1,说明这个时候的子序列最长为1。到了nums[3]=5,发现前面有个2比他小,然后+1变成了2,num[4]=3,同理。然后的nums[1]=9,nums[2]=2,对应的因为都比前面的10小就都让dp为1。求最长递增子序列,那就设dp[i]是以 i 结尾的 最长严格递增子序列。
2023-11-09 16:20:56
103
原创 121买卖股票的最佳时机I II III IV and 309最佳买卖股票时机含冷冻期 714.买卖股票的最佳时机含手续费
代码随想录冷冻期....真冷。
2023-11-07 13:51:01
117
原创 322. 零钱兑换 279.完全平方数
是一直在选最小值的,如果dp[0]等于0,那后续值都会被0覆盖,而0则因为完全平方数里有 1 的存在(可以凑成任意总和,不可能拼凑数是0),所以为了这个目的,dp[0]=0。目标金额为j-coin[i]的最小硬币数量为dp[j-coin[i]],所以dp[j] = dp[j-coin[i]]+1。此时我们要选择最小的dp[j],所以递推公式:dp[j] = min(dp[j - i * i] + 1, dp[j]);dp[0]=0,虽然0可以解释为0*0,有一种,但是,从递推公式可以看出。
2023-10-31 10:51:57
116
原创 377. 组合总和 Ⅳ 70.魔改爬楼梯
nums[i]一般指当前为 i 的物品,这题num[i]有1----m,但没有数组的形式,所以dp[j]+=dp[j-i]求装满背包(爬到目标楼梯)有几种方法(组合,排列数)用:dp[j] += dp[j - nums[i]];求装满背包有几种方法(组合,排列数)用:dp[j] += dp[j - nums[i]];相当于:给了一个1-m的数组,数组元素可取无数次,到达总数为m的最大排列数。dp[i]:爬到有i个台阶的楼顶,有dp[i]种方法。dp[j]:达到目标值j的整数组合数为dp[j]
2023-10-30 13:10:01
642
1
原创 完全背包理论基础 518.零钱兑换II
01背包是每个物品只能放一次,而完全背包是每个物品都能重复放入多次。01背包完全背包对比代码,01背包的一维代码是向物品后容量,而且遍历背包容量的时候是倒序,防止放入多次重复物品而完全背包是物品和容量的遍历顺序可随意替换,而且由于可放入多次重复物品,所以都是正序遍历01背包的一维必须要向物品再容量遍历,是因为.....
2023-10-30 10:28:01
79
原创 494.目标和 474.一和零
是left(总和),-是right(总和),如果结果为目标和target的话,sum=left+right(总和),target=left-right(目标和),推出right=left-target 推出sum=left+(left-target)最后推出 left=(target+sum)/2,利用target和sum都确定这一点,可以求出+的组合left来。给一个元素只由0和1组成的集合strs,再给两个正整数m和n,要求找出最多有m个0和n个1的集合strs的子集,同时这个子集的元素最多。
2023-10-17 19:12:11
175
原创 416. 分割等和子集 1049.最后一块石头的重量II
有一堆石头,每一块的重量都是正整数,每次都拿两块出来,重量分别为x,y,大的把小的磨没,自身重量减去小石头的重量,相等就同归于尽,求不断这样做后最后留下来的石头重量最小的重量是多少,全部没了就返回0.范围 1 <= stones.length <= 30,1 <= stones[i] <= 1000。
2023-10-16 20:13:51
150
1
原创 343. 整数拆分 96.不同的二叉搜索树
(i - j) * j,和dp[i - j] * j是获得dp[i]的两种乘法,在里面求最大值可以得到当前dp[i]的最大值,但是这一次的得出的最大值如果赋值给dp[i],可能没有没赋值的dp[i]大,具体例子的话,没想,只能说是覆盖了可能出现的问题。比如dp[3] = dp[2] * dp[0] + dp[1] * dp[1] + dp[0] * dp[2],分别以1,2,3为头节点的不同二叉搜索树的数量加起来等于。设dp[i]的含义是以1....到 i 构成的二叉搜索树为dp[i]种。
2023-10-13 20:34:59
167
1
原创 62.不同路径 63. 不同路径 II
这样的话,障碍物的坐标也就是他的dp[i,j]没有赋值为0,那么他的下一个格子,比如dp[i-1,j]就没用加上来自dp[i,j]的方法数。同62.不同路径,最左下角(终点)由他的上方一格的方法总数和左边一格的方法总数推出,如果碰见石头的话,直接跳过石头遍历下一个格子就好,也就是。dp[i,j]设置为到达i,j的时候所以的方法数,那么dp[i-1,j]+搭配dp[i,j-1]= dp[i,j]有石头挡路,题目给了一个二维数组的坐标。初始化,只有一格格子的时候,dp[1,0]=1 dp[0,1]=1。
2023-10-13 13:11:52
816
原创 03.爬楼梯 04.使用最小花费爬楼梯
到达dp[i-1]的方法总数,不管方法总数是怎样麻烦,都到了dp[i-1]了,到了dp[i-1],那么每种方法的再加+1,就到了dp[i],dp[i-2]+2同理,但是要注意就算dp[i-1]总数+1还是dp[i-2]+2,他们的方法总数都没有变,因为只是在每种加法搭配的基础上+1或者+2而已,原方法数并没有改变。所以 dp[i] = min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]);以前写博客还是麻烦了,写下迷惑的点和思考过程就好。
2023-10-11 21:30:12
113
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人