凌晨一点,屏幕上还亮着那道动态规划。题解翻来覆去看了三遍------每个字都认识,连起来就是不知道它在干什么。状态怎么转移的?这个 dp[i][j] 到底是从哪来的?脑子里全是问号。
说实话,我也是这么过来的。 不是那种一眼就能看穿算法本质的大佬,每次刷题都卡在"题解看懂了字,却没真正看懂思路"这一步。后来我尝试用 AI 帮自己拆解推理过程,发现有帮助,但光靠文字还是不够------我需要亲眼看到每一步到底发生了什么。
于是就有了 Bare Algo(朴素算法) 。这是一个开源的交互式算法可视化平台,把算法的每一步推演变成可以播放、暂停、步进、拖拽的逐帧动画。DP 状态怎么填表、BFS 怎么一层层扩散、回溯在哪里剪枝------不用脑补了,按下播放键,看着它一帧帧跑给你看。
🚀 立即体验(欢迎 Star ⭐)
👉 在线访问 :barealgo.com
⭐ GitHub 仓库 :Harvey-Andrew/bare-algorithm
为什么它值得关注?
Bare Algo 覆盖了 23 个算法分类------数组、链表、二叉树、图论、动态规划、位运算、单调栈、线段树、并查集......几乎满足从入门到进阶的全部刷题需求。更重要的是,它不仅教你"怎么做",还通过真实业务 Demo(如账号合并检测、课程依赖分析)展示算法在实际场景中的应用,帮助你真正将算法思维内化为工程能力。
✨ 三大核心亮点
-
🎬 逐帧可视化播放器 --- 支持多倍速(0.5x--4x)、进度拖拽、代码同步高亮,播放到哪一帧,对应代码行自动亮起,帧消息实时更新,彻底告别"不知道执行到哪了"。
-
🔀 多解法一键对比 --- 同一道题(如岛屿数量)支持 DFS / BFS / 并查集等多种模式一键切换,直观对比不同算法的思路差异与时空复杂度表现。
-
📱 全平台响应式体验 --- 移动端竖屏悬浮条 + 抽屉、桌面端 7:5 双栏布局,配合自动缩放容器
ScaleToFit,无论手机还是大屏都能流畅使用。
🗺️ 项目架构一览
算法配置"] --> B["⚙️ generateFrames()
帧生成函数"] B --> C["🎞️ Frame[]
快照序列"] C --> D["🖥️ GenericVisualizer
通用渲染引擎"] D --> E["▶️ 交互式播放器
播放/暂停/步进/拖拽"] style A fill:#4f46e5,color:#fff,stroke:none style B fill:#7c3aed,color:#fff,stroke:none style C fill:#a855f7,color:#fff,stroke:none style D fill:#c084fc,color:#fff,stroke:none style E fill:#e879f9,color:#fff,stroke:none
每个算法都是一个自包含模块 ,只需定义配置、帧生成逻辑和渲染组件,即可无缝接入平台------这也意味着任何人都可以轻松贡献新题目。
如果你也认同"看动画学算法"这件事,欢迎提 PR 贡献新题目,或在讨论区分享你的解题思路。 你的每一次参与,都在帮助更多人跨过算法这道门槛。
"算法不该只是面试的门槛,它应该被所有人看见和理解。"