本文主要侧重于可视化的介绍和简单的操作,为后续算法相关的博客提供可视化素材。具体细节请读者自行学习。

简介

数据结构对于计算机系的同学们来说无疑是最基础、最重要的一门课程之一,但是在面对抽象的代码、陌生的概念时感到无从下手,对于数据结构的运行步骤没有一个直观的认识,而数据结构可视化可以帮助同学们用具体的图形理解抽象的算法,从而更好掌握数据结构的精髓。

准备工作

推荐的可视化网站

  1. Python Tutor - Python Online Compiler with Visual AI Help
  2. 通过动画可视化数据结构和算法 - VisuAlgo 如果想要动画效果建议使用此网站

编程基础

读者至少掌握一门常见的计算机语言(如C++、Python等)的基础语法,否则数据结构可视化无从谈起。

可视化开发

Python tutor

基础的界面如下,参考图像文字学习

代码展示和调试区

001_可视化开发基础_01

调试:设置断点:点击对应的代码,其颜色会变红,下方会出现红线,如果你点击<prev或者是Next> 会自动跳转到设置有断点的代码行。示例如下

001_可视化开发基础_03

注意:执行步数最大为999步

编辑代码区

编辑完成并确认没有语法错误后点击左下角的visualize execution 将其可视化。

001_可视化开发基础_02

案例

可以点击代码区下面的show code examples 感受一下不同例子可视化的效果

小技巧

  1. 对于Python,可以在编辑代码区可以通过一行#pythontutor_hide: 变量名 将指定的变量在可视化界面中隐藏,读者可以使用此代码隐藏无关变量。对于其他的编译器,可以在可视化执行之后点击Move and hide objects 按照说明将指定的对象隐藏。
  2. 可视化执行之后,可以点击左下方的两个按钮生成链接或者是iframe嵌入到markdown文件格式里面,甚至可以执行\(^o^)/~,如下

建议以上网址链接用电脑端打开,手机端会有界面溢出的问题

001_可视化开发基础_04

visualgo

这个网站有中文,同时也有教程,这里就不展开教学了,比较适合需要动画效果的代码展示。

gif录制

软件:ScreenToGif 选择对应的版本下载即可。

参考教程:链接:screentogif

示例如下(gif相当于图片,可以直接在markdown文件里面按照图片的格式插入)

动画

参考

  1. Python Tutor - Python Online Compiler with Visual AI Help
  2. 通过动画可视化数据结构和算法 - VisuAlgo
  3. ScreenToGif:软件下载官方网站
  4. screentogif :B站教程