- 博客(4)
- 收藏
- 关注
原创 一文看懂:信息学奥赛中的指针和引用
本文面向备赛CSP-J/S或NOIP的C++学习者,重点讲解指针与引用的核心区别和使用场景。指针存储内存地址,可以重新指向和为空;引用是变量的别名,必须初始化且不可换绑。竞赛中引用更常用(函数传参、遍历修改),指针主要用于底层数据结构实现。关键点包括:指针用*和->操作,引用直接使用;Node*&用于修改指针本身;需避免空指针和未初始化错误。文章通过对比表格和代码示例(如链表遍历、二叉树插入)说明实际应用,建议优先掌握引用,理解指针基础概念即可满足竞赛需求。
2026-07-31 19:30:07
191
原创 CSP复赛代码模板
错误正确做法文件名写错(如多空格、大小写)严格按题目要求命名,一般全小写freopen放在输入之后必须写在任何输入输出语句之前scanf忘记加取地址符long long用了%d%lld对应long long混用cin/cout和整个程序统一用一种输入输出方式。
2026-06-12 10:52:58
336
原创 一文看懂:无向图、有向图如何判断环与找最小环
环:一条起点与终点相同,且中间顶点不重复的路径(简单环)。最小环:图中边权和最小的环。若存在负权环,则最小环无意义(可以无限绕圈变小)。问题图类型正权边负权边(无负权环)有负权环判环无向图并查集/DFS并查集/DFS并查集/DFS判环有向图拓扑排序/DFS三色拓扑排序/DFS三色拓扑排序/DFS三色求最小环无向图FloydOn3O(n^3)On3FloydOn3O(n^3)On3无解求最小环有向图Dijkstra+删边。
2026-06-11 21:58:06
393
原创 一文看懂:什么时候用深搜,什么时候用广搜?什么时候需要回溯?
而状态的值会随着路径改变(比如棋盘上放皇后、排列问题中某个数字是否用过)。全局只走一次,踩过就不回头(不回溯)。BFS 的空间开销取决于每层的节点数,如果宽度太大,队列会爆内存。判断连通块:DFS 遍历,走过的点直接标记为已访问,不会恢复。BFS 天然非递归,状态不依赖路径,没有“撤销”的需求。树的深度计算:每个节点只被访问一次,无需撤销。状态在递归的路径上会改变,返回时要恢复原样。迷宫走所有路径:标记走过,递归,取消标记。八皇后:放置皇后,递归,移除皇后。(整体访问状态),则不需要回溯。
2026-06-04 11:54:29
513
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅