专栏首页GitHubDailyGitHub 标星 2.4w+,这个开源项目让算法动起来!

GitHub 标星 2.4w+,这个开源项目让算法动起来!

转自大数据文摘,作者蒋宝尚

一门编程语言在入门之后,要想进阶,便必须得学好算法和数据结构,但一般的学习过程通常是枯燥无味的,今天在这里给大家分享个工具,兴许能解决你这个问题。

这是一个名为 Algorithm Visualizer 的直观的算法可视化工具,在里面你可以自由选择自己想学习的算法,每个算法它都清晰描绘了其原理和运作过程。

https://github.com/algorithm-visualizer/algorithm-visualizer

开源至今,该项目已在 GitHub 上斩获 2.4w 个 Star,成为开发者们最喜欢的算法项目之一。感兴趣的同学,可以在线玩一下:

https://algorithm-visualizer.org/

如何使用?

工具有了,接下来跟大家讲解下如何使用。

这里以 depth limited Search 为例,对这个工具的大致使用做下演示说明:

如上所示,最左边的为目录区,你可以在这里选择任何你中意的算法,中间就是算法的动态演示区域与日志输出区,而日志模式则会记录每次搜索的过程。

最右边上面有个工具栏,在那里你可以选择播放或者暂停,甚至还有播放速度,工具栏下面部分就是代码区域,该算法的核心代码都是在这里体现。

目前支持的算法非常多,其中包括回溯法、加密算法、动态规划、图搜索、贪婪算法、搜索算法、排序算法等常用算法。

为了便于大家理解,下面我再提供多另外两个算法让大家参考。

二分法检索:

泛洪填充算法:

可以看到,通过动画与代码相结合的学习方式,确实降低了开发者的理解成本,使知识更加容易吸收。

倘若你能学会这款工具的使用,相信后面在学起算法时会更加得心应手,另外还能对他人进行讲解演示,真可谓是一举两得。

现在,工具有了,你还不开始学起来吗?

文章转载自公众号 大数据文摘 , 作者 文摘菌

本文分享自微信公众号 - GitHubDaily(GitHubDaily)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • RL解决'BipedalWalkerHardcore-v2' (SOTA) 更新

    我们介绍了openai gym 环境'BipedalWalkerHardcore-v2'以及我们解决这个环境,达到效果和效率上的 state-of-the-ar...

    用户1908973
  • gh-ost 在线ddl变更工具​

    作为MySQL DBA,相信我们大家都会对大表变更(大于10G 以上的)比较头疼,尤其是某些DDL会锁表,影响业务可持续性。目前通用的方案使用Percona 公...

    用户1278550
  • 我还需要和我的猫一起发文章吗?

    早年一个学术界的段子一直让我印象深刻,有一些作者独立完成了自己的工作,却囿于投稿杂志的陈规,无法只写一个作者,无(愉)奈(快)间(地)加上了自己的猫,或者邀请其...

    生信技能树
  • 寓教于乐,用玩游戏的方式学习 Git!

    从刚接触电脑时的打字练习软件 金山打字通,到程序猿写代码的利器 Vim 都有小游戏(金山打字通游戏、VIM Adventures)来帮助我们入门。

    五分钟学算法
  • 珍藏多年的 Git 问题和操作清单

    本文整理自工作多年以来遇到的所有 Git 问题汇总,之前都是遗忘的时候去看一遍操作,这次重新整理了一下,发出来方便大家收藏以及需要的时候查找答案。

    猿天地
  • JAXnet:一行代码定义计算图,兼容三大主流框架,可GPU加速

    项目地址:https://github.com/JuliusKunze/jaxnet

    机器之心
  • 零基础的小白,如何学Python才能更快就业?

    Python现在非常火,语法简单而且功能强大,很多同学都想学Python!所以小的给各位看官们准备了高价值Python学习视频教程及相关电子版书籍,欢迎前来领取...

    python学习教程
  • (数据科学学习手札67)使用Git管理Github仓库

      Git是目前使用最广泛的分布式版本控制系统,通过Git可以方便高效地管理掌握工作过程中项目内容文件的更新变化情况,通过Git我们可以以命令行的形式完成对Gi...

    Feffery
  • [系列] - go-gin-api 路由中间件 - 日志记录(三)

    上篇文章分享了,规划项目目录和参数验证,其中参数验证使用的是 validator.v8 版本,现已更新到 validator.v9 版本,最新代码查看 gith...

    新亮
  • GitHub 标星 3.2w!史上最全技术面试手册!

    简历怎么写才能吸引 HR 的眼光,可能会被技术老大问到哪些常见问题,拿到 Offer 之后怎样才能让自己的优势最大化然后优中选优?

    GitHubDaily

扫码关注云+社区

领取腾讯云代金券