- 博客(17)
- 收藏
- 关注
原创 starUML7.0.0最新版本的下载与激活
如果有 license-manager.js则进行修改 license-manager.js 文件,如果没有则修改license-store.js文件。开发的桌面应用(Electron 可理解为 “用网页技术做桌面软件”),其核心逻辑(授权验证、自动更新)都封装在。.asar` 是 Electron 专用的 “压缩包格式”,用于打包代码和资源,防止直接修改)。是 Electron 专用的 “压缩包格式”,用于打包代码和资源,防止直接修改)。,每一步都是为了实现这个目标而设计的 “流程化操作”。
2025-11-24 11:02:07
1013
原创 PTA 1007(最大连续子序列和、动态规划dp)
当a[k] > 0 时,dp[k] = max(dp[k-1], sum + a[i]);它会导致y在最后等于0 ,更新;当a[k] <= 0 时,dp[k] == dp[k-1];
2025-11-23 19:47:06
663
原创 PTA 1087(dijkstra + dfs)
满足最优子结构,dijkstra算法求单源最少价钱问题,在最短路径上不仅存在边权,又存在点权,每个城市的幸福感相当于点权,求最少价钱路线的数量,最少的花费,最优路线的幸福感总和,平均幸福感,分别开对应的数组来记录其结果,用pre数组来记录路线的每个城市的前一个城市节点。储存字符串+数值 (字符串加点权)的数组时用:pair<string, int> arr[205];储存pair数组对应的下标,方便后面好寻找。
2025-11-23 19:46:26
640
原创 计算机中为什么使用补码表示负数?
反码是把原码取反,因为人们想加上一个数,就相当于加上一个相反数,就像(-5)+ 5 = 0,而(5)0101 +(-5的反码) 1010 = 1111(-0的反码)正好少个1。首先我们使用带符号位的原码来计算,最高位表示符号位,1表示正数,0表示负数,那我们有了这些数字,我们用来干什么呢?然后把绝对值大的减去绝对值小的,变成2,最后加上绝对值大的符号。为了用加法统一实现加减法,简化电路设计,为了解决,计算机做减法和引入符号位(正号和负号)的问题。:补码 = 反码 + 1(即 “取反加 1”),本质是。
2025-11-22 20:28:55
134
原创 c++中数组开的大小范围
64 位地址总线和 8 位字符是完全独立的概念:前者管 “内存能多大”,后者管 “单个数据存多大”。栈内存适合短期、小型数据,自动管理;堆内存适合长期、大型或动态数据,需手动管理,避免泄漏。
2025-11-15 13:27:34
717
原创 二叉树的相关知识
从其他几种序列中得到其中一种序列不需要构建二叉树后序+中序 -> 层序先序中序转后序先序后序-> 中序找两个结点的LCA需要构建二叉树Z字形输出树序列(根据中序和后序建树 保存在tree二维数组中二叉搜索树不需要构建二叉树(得到其序列,只需要知道左右子树的划分即可)判断一个前序序列是否是其二叉搜索树或镜像树的前序序列,得到其后序序列得到完全二叉搜索树的层序遍历需要构建二叉树给出一个二叉树的结构与二叉搜索树的结点,得到其层序遍历最后二层的结点个数。
2025-11-15 13:25:17
864
原创 BFS(队列)
BFS的核心是**“逐层遍历”,通过队列的FIFO特性控制节点访问顺序,其最大优势是能高效求解无权图的最短路径**和层次关系问题。在实现时,需注意“入队时标记访问”以避免重复入队,非递归版本是工程中的首选实现方式。掌握BFS与DFS的差异,可根据具体问题场景(如“求最短路径”选BFS,“求所有路径”选DFS)灵活选择算法。
2025-11-11 16:13:08
734
原创 IntelliJ IDEA 中 Tomcat 控制台乱码解决方法(更新于2025/11)
首先,看一下处理过后的控制台输出非常的清爽啊,心旷神怡。(感觉心情美美哒)之前一直都看着乱码的控制台,想着反正对实际应用没什么影响,等下弄一下,一天就过去了,还不如多做点事情,学点技术。但今天运行时,看到一团乱麻麻的东西在我的控制台,而我的测试的日志却掺杂在其中,感觉它真的是孤立无援,遂狠下心,特来解救。看了很多解决文章,尝试了很多遍。先给出我的idea版本及tomcat版本,又可能版本不同,解决办法不同。(最后面给出了我尝试过的方法)如未解决你的问题,请勿责怪,小生这厢有礼了。
2025-11-11 16:06:10
1935
原创 自学DFS算法总结
DFS(深度优先搜索)是一种用于遍历树或图的算法,其核心思想是沿着一条路径尽可能深入探索,遇到障碍时回溯继续搜索。DFS适合处理路径搜索、连通性判断等问题,可通过递归或栈两种方式实现。递归版本通过隐式栈保存状态,非递归版本则显式使用栈模拟。算法需维护访问标记数组避免重复访问和死循环,时间复杂度为O(V+E)。典型应用包括迷宫求解、拓扑排序和回溯问题等。
2025-11-10 08:10:49
1119
原创 二分查找算法
摘要:二分查找是一种高效的有序数据集查找算法,通过不断将搜索范围减半实现快速定位,时间复杂度为O(log n)。其核心要求是数据集必须有序,适用于查找目标值、定位边界位置及求解单调函数等问题。算法通过初始化边界指针、循环比较中点值与目标值来缩小范围,提供标准查找、左边界和右边界三种模板。关键点在于正确选择中位数计算方式和边界收缩方向,确保搜索范围严格减小。实数二分则通过设定精度阈值进行迭代逼近解。二分法的本质是利用有序性排除无效范围实现高效搜索。
2025-11-10 08:08:51
830
原创 dijkstra算法
被加入 S 时,其到起点的距离已经是最短的 —— 因为任何后续路径(经过其他未访问顶点)的总权值只会更大(非负累加),不可能比当前距离更短。:每次从 “未确定最短路径” 的顶点中选择距离起点最近的顶点,确定其最短路径后,再以该顶点为中介,更新其他顶点的距离。适用于顶点数多(n>1000)的稀疏图(边数少),用优先队列快速找到 “当前最短距离顶点”。步骤 2:迭代确定最短路径(共 n 次,每次确定一个顶点)适用于顶点数较少(n≤1000)的稠密图。数组中存储的就是起点到各顶点的最短距离。是否已加入集合 S。
2025-11-09 21:14:53
274
原创 开发过程遇到问题的解决经验总结
摘要:本文总结了开发过程中解决问题的经验方法。首先应通过观察错误特征、分析原理并检查过往类似案例来定位问题。若无解决方案,可采取三种搜索途径:检查Github项目的issue区获取已有讨论方案;百度搜索相关技术帖;结合经验向AI提问特定问题。核心思路是先自主分析,再系统化地借助网络资源,最终形成有效解决方案。
2025-11-09 21:13:19
121
原创 hexo使用中遇到的问题
Hexo代码块显示问题解决方案 在使用Hexo时,代码块选中时会与上一行重叠且不显示行号。通过修改prism.css文件,将pre[class*=language-].line-numbers>code的position: relative改为position: sticky即可解决。sticky属性优化了代码滚动时的定位稳定性,消除了行号错位和选中覆盖问题,特别适用于长代码块或需要频繁滚动的场景
2025-11-08 14:28:06
116
原创 5分钟 修改Gitalk代理地址,解决无法登录问题
最近心血来潮,也不算吧,一直都有这个想法,只是一直都未付诸行动——搭建个人博客。应该暂时还没有经济收入,所以放弃了自建动态个人博客网站,毕竟不仅要花费时间来维护,还要花点小钱,没啥必要~~,所以采用了用使用静态站点生成器(如Hexo)搭建博客。但在搭建过程中还是遇到了诸多问题,故记之~~:是 “Gitalk 向 GitHub OAuth 接口发送请求时,网络连接失败(超时 / 被拦截 / 代理无效)”。查看了一下代码,才发现原来是代码中gitalk的代理已经失效了(这个地址被墙了),所以得换一个代理。
2025-11-08 14:22:39
814
原创 从c到c++到ACM(从0开始学竞赛)
7.25总结1.关闭流同步优化的办法2.#define int long long 和 signed main()3. 取不同容器长度.length() 或 .size 的选择。
2024-07-25 23:50:26
1063
空空如也
?我感觉两段代码一样,为什么第一段代码是对的,第二段代码会出现有案例错误,搞不懂
2024-08-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅