题型与建模类术语
- 路径规划:在图或网格中寻找满足约束的路线,目标可能是最短距离、最少时间或最低成本。
- 资源调度:在时间、人力、车辆、库存或预算约束下安排任务或分配资源。
- 数据标准化:把不同格式、不同单位或不同写法的数据统一成可计算结构。
- 流程模拟:按题目给出的顺序和规则,逐步还原真实过程中的状态变化。
- 综合分析:对多个指标进行比较、排序、评分、分级并给出结论。
- 传播仿真:模拟信息、活动、物资或影响在节点之间扩散的过程。
- 趋势分析:根据时间维度上的数据变化识别增长、下降、波动或阶段规律。
- 规则决策:把自然语言条件翻译成程序规则,并依据这些规则作出选择。
算法与数据结构类术语
- 排序:按照某个或多个关键字对对象重新排列顺序。
- tie-break:当主关键字相同的时候,用来继续比较顺序的次级规则。
- 枚举:把所有可能情况逐个检查,适合规模较小的问题。
- 贪心:每一步先选当前看起来最优的方案,希望最终得到整体好解。
- 动态规划:把大问题拆成有重叠子问题的小问题,并记录中间结果。
- BFS:广度优先搜索,适合无权最短步数、分层传播和最短轮次问题。
- DFS:深度优先搜索,适合遍历、连通块、回溯和搜索路径。
- Dijkstra:处理非负权图最短路的经典算法。
- 前缀和:预先记录从开头到当前位置的累计和,用于快速区间求和。
- 滑动窗口:维护一个连续区间,适合处理连续子段、窗口统计和容量控制问题。
- 邻接表:图的一种存储方式,记录每个节点连向哪些节点。
- 状态变量:在流程模拟、DP 或搜索中,用于描述当前局面的变量。
输入输出与实现类术语
- 输入解析:把原始输入文本转成程序可使用的数据结构。
- 输出格式:结果展示的精确形式,包括空格、换行、顺序和保留位数。
- 边界条件:最小值、最大值、空输入、单元素、末尾节点等特殊情况。
- 复杂度:衡量算法随数据规模增长的耗时和空间消耗。
- 整数溢出:数值超过当前数据类型能表示的范围。
- 精度误差:浮点数运算中出现的近似偏差。
- 调试:通过打印、样例推演和定位错误来修正程序。
- 复盘:在完成题目后,总结题型、思路、错误点和改进方向。
竞赛训练类术语
- 样例推演:按照题目给出的样例或自造小样例,手工执行一次完整过程。
- 运行证据:证明程序曾被执行并通过测试的记录,如输出截图、日志和结果文件。
- 题型判断:根据输入、输出、目标和约束识别问题类别。
- 模板选择:依据题型和语言特点选用合适的代码骨架。
- 分层训练:按基础、进阶、冲刺等阶段组织训练内容。
- 带训:教师、教练或高年级学生组织并指导训练的过程。
- 讲评提纲:赛后或课后用于讲解题目的固定结构。
常见易混术语提醒
- 最短路径 不等于 最少边数:有权图中应优先关注总权重,而不是边数。
- 排序 不等于 评分:排序只给顺序,评分还需要明确分数计算方式。
- 去重 不等于 合并:去重是删除重复项,合并可能还需要累加或整合字段。
- 平均值 不等于 趋势:平均值只是一种统计量,趋势还要看时间变化方向。
- 可行解 不等于 最优解:能满足约束不代表已经最好。