程序员基础知识:数据结构和算法
在面试的过程中,面试官总会问一些数据结构和算法相关的问题,在开发的过程中,使用好相关知识会让程序的质量和效率更高。
作为一枚非计算机相关出身的程序员,数据结构和算法全靠自学,因为我没有那百分之一的天分,所以学习起来特别吃力。那时候就想如果有一个可以直观看到运行逻辑的工具该有多好?
Visualgo,可视化动画让你轻松入门数据结构和算法
今天发现了一个网站使用可视化动画来让你轻松入门数据结构和算法,这里面包含了排序算法、链表、哈希表、二叉树、并查集,动态规划等数据结构和算法动画。部分示例在执行过程中,还会在右下角高亮显示当前示例的代码逻辑。另外关键的一点是这个网站支持中文语言,这对英语不太好的朋友非常有用。
下面我们来欣赏一下这个网站。
首先我们打开网站可以看到有这么多的示例。接下来我们随便点击一个进入。
这里我点击进入的是一个递归树,在导航栏切换到了 动态规划。左下角是一些示例,这里我随便选择了一个旅行推销员的例子,点击后面的【运行】按钮,就可以看到每一步是如何执行的,中间是执行结果。
我们来看一下这个代码是怎么运行的
由于这个示例只有动画,没有每一步所执行的说明,下面我们再来看一个经典的排序算法,这个可以看到每一步代码是怎么执行的。
希望你能有所收获。