- 博客(47)
- 收藏
- 关注
原创 【滑动窗口/单调队列】AcWing 154. 滑动窗口
摘要 本文探讨了滑动窗口问题的高效解法,通过单调队列优化传统队列方法的时间复杂度。题目要求在长度为$n$的数组上,对于每个大小为$k$的滑动窗口,分别输出窗口内的最小值和最大值。普通队列方法在最坏情况下会超时,而单调队列方法通过维护递增和递减的双端队列,将时间复杂度优化至$O(n)$。代码实现分别处理最小值和最大值,通过队列头指针和尾指针的动态调整,确保了每个窗口的高效查询。该方法适用于$n \le 10^6$的大数据量场景,是典型的数据结构优化案例。
2025-06-05 21:19:10
552
原创 【排序(运算符重载/自定义比较函数)+01背包(动态规划)+快读快写】2024睿抗-5837. 工作安排
本文研究了如何选择一组工作以最大化总报酬的问题。题目要求每项工作必须在截止时间前完成,且不可中断。我们采用了动态规划方法,将工作按截止时间排序后,使用一维数组优化空间复杂度。具体实现中,我们定义dp[j]表示在时间j前能获得的最大报酬,通过逆序更新数组来避免重复计算。实验结果表明,该方法正确解决了该问题,在合理时间复杂度内获得了最优解。关键点在于工作排序和状态转移时的边界条件处理。最终代码通过排序和优化的动态规划策略,实现了高效求解。
2025-06-05 15:42:30
616
原创 【映射】2024-睿抗-AcWing 5834. 谁进线下了?
摘要:文章展示了一个C++程序,用于计算20支队伍的比赛得分。程序通过预定义的排名-分数映射表(dist数组)进行计算,其中排名靠前的队伍获得更高基础分(如第一名12分)。用户输入比赛场次n后,程序处理每场比赛的排名数据,加上额外加分项k,最终输出各队伍总分。该实现采用数组存储分数,通过循环结构完成批量数据处理,适用于多场赛事积分统计场景。(98字)
2025-06-04 21:52:34
210
原创 【拓扑】1639.拓扑排序
本文介绍了如何判断给定序列是否为有向图的拓扑排序。通过遍历序列中的每个结点,检查其入度是否为0,并更新相邻结点的入度来验证拓扑排序的有效性。程序会备份原始入度数组,避免影响后续测试。对于每个测试序列,若发现不符合拓扑排序规则则输出其编号。该方法确保正确识别所有无效拓扑序列。输入包含图的边信息和测试序列,输出为所有无效序列的编号。算法复杂度主要取决于图的边数和结点数,适用于中等规模图结构。
2025-06-04 21:28:17
845
原创 【拓扑剪枝+深搜剪枝/计数】2024睿抗-章鱼图的判断
本文提出了一种判断无向图是否仅含单一章鱼子图的算法。章鱼图定义为包含一个环和若干树结构的连通图。算法首先通过拓扑排序剥离图中非环结构(触手部分),然后检测剩余环的数量和性质。若图中仅存在一个标准环(所有节点度数为2的连通环),则输出该环大小;否则统计存在的章鱼子图数量。算法采用拓扑剪枝和深度优先搜索相结合的方法,时间复杂度为线性。样例测试验证了算法的有效性,能正确区分单一章鱼子图、无章鱼子图和多章鱼子图的情况。
2025-06-04 01:03:59
399
原创 【拓扑排序 + 优先队列】3704. 排队
这篇文章介绍了一个基于拓扑排序和优先队列的算法,用于解决小朋友排队问题。题目要求满足多个先后顺序约束,同时当排序不唯一时让编号更小的小朋友尽量靠前。 主要思路是: 构建图的邻接表,并记录每个节点的入度。 使用小根堆优先队列处理入度为0的节点,确保每次选取编号最小的节点。 依次取出堆顶节点加入结果,并将其后继节点入度减1,若入度变为0则加入队列。 算法保证了在满足所有约束的前提下,编号更小的节点优先被选中,从而得到最优解。时间复杂度主要由拓扑排序决定,为O(nlogn)。
2025-06-04 00:21:05
814
原创 【已解决】E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process
在使用apt安装软件时,可能会遇到无法获取dpkg前端锁的错误,提示资源暂时不可用。这通常是因为另一个进程正在使用该锁。解决方案有两种:首先,可以尝试使用sudo killall apt apt-get命令终止相关进程。如果没有找到相关进程,可以执行第二种方案,即删除相关的锁文件并重新配置dpkg。具体步骤包括删除/var/lib/apt/lists/lock、/var/cache/apt/archives/lock和/var/lib/dpkg/lock*文件,然后运行sudo dpkg --configu
2025-05-21 16:19:01
221
原创 【已解决】docker search --limit 1 centos Error response from daemon
在使用docker search命令时,可能会遇到连接超时的问题,例如i/o timeout错误。这通常是由于网络连接不稳定或DNS解析问题导致的。解决方案之一是使用Docker镜像代理,例如在搜索时使用docker-0.unsee.tech/mysql:5.7来替代直接搜索。此外,如果问题仍然存在,可以尝试修改/etc/resolv.conf文件,将nameserver设置为114.114.114.114或8.8.8.8,并增加timeout和attempts的值,以延长连接尝试时间和次数。这些方法可以帮
2025-05-21 16:01:31
514
原创 Vue+Go 自定义打字素材的打字网站
Typing_Key_Board (TKB) 是一个基于Vue 3和Go语言的自定义打字练习网站,允许用户自定义打字素材,特别适合编程学习者和打字练习者。项目采用前后端分离架构,前端使用Vue和Vite,后端使用Go和Gin框架,数据存储采用SQLite。主要功能包括自定义打字素材、实时打字反馈、错误统计、打字历史记录等。项目支持本地开发和Docker部署,提供了详细的技术栈和部署指南,适合开发者练手和贡献。项目已在GitHub开源,欢迎用户试用和反馈。
2025-05-18 11:53:50
1072
原创 掌握Docker Commit:轻松创建自定义镜像
docker commit 命令允许用户通过修改现有容器来创建新的镜像。首先,启动并修改容器,例如在 Ubuntu 容器中安装 vim。然后,使用 docker commit 提交容器为新的镜像,并通过 -a 和 -m 选项分别指定作者信息和提交信息。提交后,使用 docker images 验证新镜像,并通过运行新镜像确认修改已生效。这一过程简化了镜像的定制和更新。
2025-05-14 15:15:26
287
原创 掌握Docker:从运行到挂载的全面指南
本文介绍了Docker容器的基本操作命令。首先,通过docker run -it命令可以启动并进入容器的交互式终端,其中-i参数保持标准输入打开,-t参数分配伪终端。使用exit可以退出终端。通过-d参数可以以分离模式运行容器,使其在后台运行。使用docker ps可以查看正在运行的容器,docker stop用于停止容器,docker start和docker restart分别用于启动和重启容器。删除容器可以使用docker rm命令,加上-f参数可以强制删除正在运行的容器。docker inspect
2025-05-14 14:13:47
354
原创 阿里云Docker镜像加速配置指南
本文介绍了如何通过阿里云官方镜像加速Docker镜像的拉取速度。首先,用户需要访问阿里云官方镜像入口。接着,检查Docker版本,确保版本大于1.10.0。然后,点击镜像加速器,根据使用的操作系统(如Ubuntu)选择相应的配置方式,并按照要求进行配置。完成配置后,拉取镜像的速度将显著提升。
2025-05-14 13:30:25
552
原创 Docker镜像操作全攻略:从查看、拉取到删除
本文介绍了Docker镜像的基本概念及其相关操作。Docker镜像是一个包含运行软件所需所有内容的轻量级独立软件包,是容器的基础。文章详细说明了如何查看当前Docker镜像、搜索镜像列表、拉取镜像、修改镜像名称以及删除镜像。通过这些命令,用户可以有效地管理和操作Docker镜像,为容器化应用的部署和运行提供支持。
2025-05-14 13:21:17
312
原创 Linux Ubuntu18.02.6 LTS 环境安装docker全攻略
本文详细介绍了在Ubuntu 18.02.6 LTS系统上安装Docker的步骤。首先,通过lsb_release -a命令确认系统版本,然后关闭防火墙以避免安装过程中的意外情况。接着,更新系统软件包并安装Docker所需的依赖。通过添加阿里云的Docker软件源,使用apt-get命令安装Docker。安装完成后,通过运行hello-world容器来验证Docker是否安装成功。如果安装失败,建议更换软件源。最后,设置Docker开机自启动。本文提供了完整的命令和参考链接,帮助用户顺利完成Docker的安
2025-05-14 11:47:08
394
原创 内网穿透之frp--展示微服务项目的救星
前段时间在做项目的时候聊到了展示项目进行答辩,此时就提到了内网穿透,特此记录一下内网穿透的方法和步骤。frp内网穿透技术在展示方面还是杠杠的,但是我们需要注意内网穿透的不安全性,所以一定要缩短开放服务的时间哦。
2025-04-16 11:15:24
1105
原创 (已解决)request to https://ui.shadcn.com/r/styles/index.json failed, reason: connect ETIMEDOUT 76.76.21
解决 magicui使用的时候的困难
2025-03-06 10:04:20
2227
原创 Kex_exchange_identification: Connection closed by remote hostConnection
使用git push指令出错。
2025-03-05 21:28:06
599
原创 更新订单接口设计
service// 更新订单信息–service–impl//更新订单状态@Override// 通过后端与数据库的接口orderDAO 选择对应的数据库对象// 特判 数据库对象 如果是null那么久返回,这里是为了防止找到的对象是null// 数据库对象存在那么就更新数据库中的status的状态// enum的状态用toString方法实现转化为String类型// 为了实现和数据库之间的交互就需要在DAO中创建这个接口并且在XML中实现映射。
2025-01-01 17:01:30
329
原创 蓝桥杯每日一题-摘花生
每组数据的接下来R行数据,从北向南依次描述每行花生苗的情况。每行数据有C个整数,按从西向东的顺序描述了该行每株花生苗上的花生数目M。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。对每组输入数据,输出一行,内容为Hello Kitty能摘到得最多的花生颗数。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。每组数据的第一行是两个整数,分别代表花生苗的行数R和列数 C。f 是一个数组(数组的大小为 N)。数组 f 主要用于存储。
2025-01-01 12:29:05
709
原创 【已解决】No qualifying bean of type xxx available
错误的核心问题是 Spring 在尝试自动注入 PaymentRecordDAO 时未找到合适的 Bean。PaymentRecordDAO 是一个 DAO 类,通常是一个接口或者类,它需要在 Spring 容器中注册为一个 Bean。PaymentRecordDAO 是一个接口,确保它上面没有遗漏 @Mapper 注解或者在配置类中通过 @MapperScan 扫描该接口。(如果使用 MyBatis)
2024-12-30 14:16:32
431
原创 isEmpty和isBlank的区别
isEmpty 和 isBlank 都是判断字符串是否为空的操作。isBlank 方法判断字符串是不是空字符串,但是isBlank在我看来它的判空极为严格。这一点也可以见名知意。根据不同的场景进行使用即可啦。这一点和它的名字十分吻合。isEmpty 方法。
2024-12-30 13:31:26
896
原创 [解耦和]PaymentRecordDO-PaymentRecordDAO-PaymentRecord
每天会对学到的知识点进行分析,学编程思维,如有不对,请大佬指出。
2024-12-29 22:27:17
532
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人