摘要: 一、回溯法分析 “最小重量机器设计问题” 1.1 “最小重量机器设计问题” 的解空间 简单来说,这个问题的解空间就是所有可能的 “部件 - 供应商” 搭配方案的总和,我们可以用通俗的方式拆解理解: 解的样子:每个解都是一个 “供应商选择清单”,可以看成一个长度为n的列表(对应n个部件)。比如有 2 阅读全文
posted @ 2025-12-24 00:29 想砂糖桔地铁 阅读(1) 评论(0) 推荐(0)
摘要: 问题:数轴上有n个闭区间[ai, bi]。取尽量少的点,使得每个区间内都至少有一个点(不同区间内含的点可以是同一个) 我的策略: 1.将所有区间按照右端点从小到大排序 2.初始化当前选择的点为第一个区间的右端点,计数器置为 1 3.依次检查后续每个区间,若当前区间的左端点大于已选择的点(即该区间不包 阅读全文
posted @ 2025-12-06 20:20 想砂糖桔地铁 阅读(8) 评论(0) 推荐(0)
摘要: 一、先搞懂问题本身 就是给一个 n 行的数字三角形,从顶上开始走,每步只能往左下或右下走,要找到一条路,让路上的数字加起来最大,最后输出这个最大的和就行。输入很简单,先给 n,再给 n 行数字,数字都在 0 到 99 之间。 二、动态规划一步步拆问题 1.1 先明确 “状态” 和递推关系(核心!) 阅读全文
posted @ 2025-11-13 23:50 想砂糖桔地铁 阅读(16) 评论(0) 推荐(0)
摘要: // 主函数:在arr[left..right]中找第k小的数 function findKthSmallest_QuickSelect(arr, left, right, k): if left == right: // 子数组只有一个元素,即为目标 return arr[left] // 随机选 阅读全文
posted @ 2025-11-11 11:39 想砂糖桔地铁 阅读(3) 评论(0) 推荐(0)
摘要: 写代码核心要点概括: 应做到的好习惯: 统一编码规范(命名、格式),优先保证代码可读性与健壮性,写可维护代码(避免硬编码、依赖抽象),做好版本控制与必要文档,兼顾协作效率。 易犯的错误: 编码不规范(命名杂乱、重复代码),忽视异常 / 边界条件、硬编码,版本控制与文档缺失,存在低效逻辑(如嵌套循环) 阅读全文
posted @ 2025-09-24 22:37 想砂糖桔地铁 阅读(7) 评论(0) 推荐(0)
摘要: 写代码核心要点概括: 应做到的好习惯: 统一编码规范(命名、格式),优先保证代码可读性与健壮性,写可维护代码(避免硬编码、依赖抽象),做好版本控制与必要文档,兼顾协作效率。 易犯的错误: 编码不规范(命名杂乱、重复代码),忽视异常 / 边界条件、硬编码,版本控制与文档缺失,存在低效逻辑(如嵌套循环) 阅读全文
posted @ 2025-09-17 12:58 想砂糖桔地铁 阅读(9) 评论(0) 推荐(0)