- 博客(72)
- 收藏
- 关注
原创 49. 字母异位词分组
将字符数组为key,字符串为值(可能有很多,存入的形式是list集合)存入map中。因为是字母异位词,他们的字母都是一样的,只是位置不一样,那么使用。方法对字符串对应字符数组排序,得到的排序结果是一样的。再将map.values 构建一个集合返回。思路:遍历所给数组拿到对应的字符串。
2025-04-04 19:34:22
198
原创 关于VUE3请求后端时,后端要用到Requestbody情况
必须用的原因:前端通过 JSON 格式在请求体中传递参数。如果后端想改用其他方式(如),前端需要调整参数传递方式(如 URL 参数或form-data),但这会牺牲灵活性和开发效率。建议保持当前设计,使用处理 JSON 请求体,这是 RESTful API 的常见做法。
2025-04-03 20:00:24
371
原创 VUE3+Springboot 实现导出word文档带图片
导出的图片在页面中已经初始化好了,需要拿到图片的base64数据编码传到后端Base64 是一种将的方式,常用于在文本协议(如 HTTP、JSON)中安全传输二进制数据(如图片、文件)。
2025-04-03 19:47:59
723
原创 VUE3中加入3DCharts动图时浏览器试图卡顿问题解决方法
在初始化图例时myChart在这里原来的myChart是响应式的变量,将他改为 var myChart = null;全局变量后问题得到解决根本原因是:当使用包装图表实例时,Vue 会通过 Proxy 递归劫持对象的所有属性。对于复杂的 3D 图表对象(可能包含数百个嵌套属性),这会带来显著的初始化延迟。ECharts 的图表实例包含大量内部方法(如setOptionresize),将这些方法包裹在响应式代理中会产生不必要的内存开销。。
2025-04-03 18:48:27
1102
原创 209. 长度最小的子数组
计算窗口内元素和sum,当sum大于等于目标值s时,更新最短长度result,并尝试缩小窗口。思路:使用滑动窗口算法,通过两个指针left和right动态调整窗口大小。返回满足条件的最短子数组长度,若无满足条件的子数组则返回0。
2025-03-30 21:05:57
355
原创 27. 移除元素
当快指针不等于要移除元素时,将快指针对应的值赋值给慢指针,两个指针都++当快指针等于要移除的元素,快指针++什么也不干。定义一个const,用于计算数组中还有多少元素。慢指针代表要赋值的位置,快指针代表要赋值的元素。
2025-03-30 20:00:59
213
原创 704. 二分查找
这种思想对于下面的middle的取值判断有很大的影响,当middle小于target时,如果是左闭右闭。一直拿middle所对应的值比较target,不断变换区间缩小区间,直至right和left相同为止。1.5不符合所以如果是偶数,就加1这样就不会出现小数的情况。如果是左闭右开,left就不可以等于right。那么left就可以等于right。开始先判断区间长度的奇偶性。因为要取中间值1+2=3。思路:先要有一个思想,左闭右开:【1,1)左闭右闭:【1,1】
2025-03-30 17:50:33
109
原创 实现java生成并下载数据质控报告的 Word 文档(Service)
拿到天数之后,我们就可以弄一个循环遍历,将每天的异常报告数据查询一遍,然后添加到集合中。
2025-03-28 19:57:46
792
原创 基于vue3实现导出设备列表
@param {string} parentCode - 当前节点的父节点编码,默认为空字符串。* @param {Object} node - 当前遍历到的节点对象。父节点编码: parentCode || '根节点'// 遍历根节点,对每个根节点调用walk函数进行递归遍历。// 如果当前节点有子节点,则递归遍历子节点。// 将当前节点的信息添加到结果数组中。设备名称: node.label,设备编码: node.code,// 存储扁平化后的节点数据。// 返回扁平化后的节点数组。
2025-03-27 08:47:29
121
原创 基于vue3在前端定义一个手工输入的按钮实现手工输入的功能
定义一个按钮,绑定事件openManualInput。输入弹窗,当点击事件触发时,激活弹窗为true。点击提交时,sunbmit方法并不会触发,因为。
2025-03-24 15:08:55
1189
原创 94. 二叉树的中序遍历
开始时,根元素1先进入函数,相当于1先进栈,之后遍历1的左子树,一直遍历到左子树没有元素为止。集合现在有2.然后传2.right进入函数,5进入函数再传5.left,为null,返回把5添加到集合中,现在集合有2,5.接着1的left遍历完了,把1也添加进去,然后调用1的右子树,集合此时有251. 接着把3传进去,然后把6传进去,然后把7传进去,然后把7.left传进去为null,添加7到集合中,6的right也为null,把6添加集合返回上一层此时集合有25176,最后把3传进去。
2025-03-22 17:13:11
130
原创 解决数据库与缓存的一致性问题
通过组合以上策略,例如“Cache-Aside + 延迟双删 + 消息队列监控”,可在保证性能的同时最大限度减少不一致窗口。实际应用中需结合业务特点(如金融系统需强一致性,电商促销可接受短暂不一致)进行调优。
2025-03-21 19:24:56
839
原创 在VUE3实现触底加载功能
此函数用于在用户滚动加载历史数据时,动态扩展查询时间范围时间范围计算:每次向前扩展 5 分钟的时间窗口;有效性校验:限制最多查询 30 天内的数据;状态更新:同步更新界面显示时间和实际查询参数;数据加载:调用 API 获取指定时间段的监控报警数据。此函数通过时间窗口滑动时间计算的准确性与时区处理;状态同步(显示时间 vs 查询参数);扩展性(步长调整、数据分段逻辑)。结合前文滚动事件处理,形成完整的分页加载交互闭环。定义一个时间选择器。
2025-03-21 19:24:31
989
原创 RabbitMQ消息的重复消费问题如何解决?
设置消费者为自动确认模式,如果服务在确认前宕机,重启后可能会再次消费同一消息。通过业务唯一标识检查数据库中数据是否存在,若不存在则处理消息,若存在则忽略,避免重复消费。解决 RabbitMQ 消息重复消费问题的核心在于,并结合 RabbitMQ 的机制和外部存储设计去重逻辑。
2025-03-12 23:11:16
310
原创 HashMap是怎么解决哈希冲突的?
HashMap 解决哈希冲突主要通过以下几种方法,结合其内部数据结构和算法来高效处理:当我们往HashMap中put元素时,利用key的hashCode重新hash计算出当前对象的元素在数组中的下标存储时,如果出现hash值相同的key,此时有两种情况。a. 如果key相同,则覆盖原始值;b. 如果key不同(出现冲突),则将当前的key-value放入链表或红黑树中获取时,直接找到hash值对应的下标,在进一步判断key是否相同,从而找到对应值。
2025-03-12 18:28:04
826
原创 HashMap实现原理
核心思想:空间换时间,哈希算法决定性能下限,数据结构设计决定上限适用场景:单线程环境下的高效键值存储,如缓存、临时数据存储避坑指南:避免在多线程环境直接使用,注意键对象的哈希分布。
2025-03-12 18:17:52
1005
原创 MQ消费队列重复消费怎么解决?
设置消费者为自动确认模式,如果服务在确认前宕机,重启后可能会再次消费同一消息。通过业务唯一标识检查数据库中数据是否存在,若不存在则处理消息,若存在则忽略,避免重复消费。
2025-03-12 11:09:32
519
原创 Easy云盘和黑马点评总结
一个仿百度云盘面向C端用户的网盘项目,包括用户注册,QQ快捷登录,文件上传,分片上传,断点续传,秒传,文件在线预览,包括文本,图片,视频,音频,excel,word ,pdf 等文件在线预览,文件分享等功能。文件分片上传,通过文件MD5实现文件秒传,文件分片上传后,异步对文件进行合并处理,视频文件,调用ffmpeg生成视频缩略图,将文件分片成ts文件。文件分片上传,秒传,新建目录,预览,文件重命名,文件移动,文件分享,删除,下载 等功能。用户注册,登录,发送邮箱验证码,找回密码。
2025-03-11 20:30:56
94
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人