我们都知道,在人体的直接感官体验上,动画与图形相对于文字代码往往能带来更有冲击感的视觉效果,也更容易加深大脑对某项事物的认知程度。
而像算法这类,拥有完整逻辑推理计算链条的知识,用动画来展示是再好不过了。
说到这里,便不得不提到那个非常经典的算法可视化网站:VisuAlgo。
由于 VisuAlgo 的使用人群足够广,地理位置跨度大,因此平台管理员也很贴心的添加了各个国家的语言,这其中便包含了中文。
所以,英语能力不太好的同学也无需担心,直接撸起袖子举手手,干就完事儿了。
https://visualgo.net/zhhttps://link.zhihu.com/?target=https%3A//visualgo.net/zh
该网站由 Steven Halim 博士推行建立,其初衷是为了帮助新加坡国立大学的学生们,更好的理解数据结构与算法,并进一步强化对各项知识点的吸收。
到了今天,这个网站已被越来越开发者所知晓,并拿来作为学习算法的辅助工具。
网站里面包含了排序、链表、哈希表、二叉搜索树、递归树、循环查找等常见算法动画,而部分高级算法,现今也只能在 VisuAlgo 上找到具体的动画展示效果。
在动画执行的过程中,还会在网站右下角高亮显示当前动画的代码逻辑。
不仅于此,该网站还提供了一些算法练习题供学生训练,以便更进一步巩固自己的算法知识。
令人称赞的是,这些问题都是可以直接通过系统自动生成与评测的。问题通过一些规则随机产生,学生答案提交后后台服务器会自动评测。
据网站管理员透露,类似这种在线评测系统,已被世界各校的 CS 讲师采用,仅通过设置系统的在线测验权重,便能很快了解学生的算法掌握程度。
当前网站上共提供 12 个可视化算法模块的问题测验,剩余 8 个可视化模块正在研发中,相信未来 VisuAlgo 的每个可视化模块都能拥有在线测验组件。