推荐一个采用方便程序员在线动画学习常用算法的良心网站

news/2024/5/13 0:27:51/文章来源:https://blog.csdn.net/weixin_33816821/article/details/89571417

网址:https://algorithm-visualizer.org/

进去之后的页面是程序员熟悉的码农风格:

假设我想学习冒泡排序算法,在搜索栏里输入sort,在结果列表里选择bubble sort:

点击之后,排序操作处于就绪状态,点击play开始:

此时右边的JavaScript代码像我们平时单步调试一样逐行执行,同时每一步执行后排序的效果在屏幕正中实时显示:

比单步调试更强大之处是,我们能随时回退到前面的执行结果,通过下图高亮的84/144这个柱状开关控制。144意思是这个排序全过程总共要进行144次单步执行,当前已经执行了84步。自动播放的速度也可以在下图所示的Speed开关控制。

这是非波拉契数列的生成动画:

二叉树的遍历动画:

Dijkstra迪杰斯特拉算法最短路径算法:

有了这个网站,算法学习从此不再枯燥。这个网站的源代码是完全开源的,如果你有新的算法想给全世界的编程爱好者展示,可以按照Readme.md里定义的规范,提交您的动画。

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

截至2019年3月16日,已经有14000多个赞了,顺手去点一个吧。

本文来自云栖社区合作伙伴“汪子熙”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_743040.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大型网站技术架构(八)网站的安全架构

2019独角兽企业重金招聘Python工程师标准>>> 从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。 1、XSS攻击 XSS攻击即跨站点脚本攻击(…

大型网站技术架构(七)网站的可扩展性架构

2019独角兽企业重金招聘Python工程师标准>>> 扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力。 设计网站可扩展架构的核心思想是模块化,并在此基础上,降低模块间的耦合性,提供模块的复用性。模…

C#实现对网站数据的采集和抓取

首先大家需要清楚一点的是:任何网站的页面,无论是php、jsp、aspx这些动态页面还是用后台程序生成的静态页面都是可以在浏览器中查看其HTML源文件的。 所以当你要开发数据采集程序的时候,你必须先对你试图采集的网站的前台页面结构&#xff08…

一个命令,让你的网站支持https

介绍 最近写小程序,但是小程序的接口得通过https的形式访问,所以用nginx转发了一下。想到Google搜索引擎会提高https网站的权重,索性把我的网站改造成同时支持http和https了。看效果 http形式访问 https形式访问 我是用LET’S ENCRYPT来生…

用Wordpress搭建独立网站

基于CentOS7搭建 前期环境 yum的一些命令 yum -y install 包名(支持*) :自动选择y,全自动 yum install 包名(支持*) :手动选择y or n yum remove 包名(不支持*)先把ph…

【读书笔记】大型网站架构演化

写在最前面 强烈推荐李智慧老师所著的《大型网站技术架构》一书,它能带领你从一个俯瞰的角度清晰的了解了一个网站的架构设计!本菜鸡以前每次接到一个项目的时候,总是一开始就罗列各种需要实现的功能,然后马上着手开始设计数据库…

【读书笔记】网站的高性能架构

前言 本菜鸡之前有过一篇读书笔记,整理了李智慧老师所著的《大型网站技术架构》一书中叙述的五个架构要素。这五个要素分别为 性能、可用性、伸缩性、扩展性、安全性。本文针对性能这一要素进行展开讨论,内容也主要参考自《大型网站技术架构》这本书&am…

【读书笔记】网站的高可用架构

前言 本菜鸡之前有过一篇读书笔记,整理了李智慧老师所著的《大型网站技术架构》一书中叙述的五个架构要素。这五个要素分别为 性能、可用性、伸缩性、扩展性、安全性。本文针对可用性这一要素进行简单的讨论,内容也主要参考自《大型网站技术架构》这本书…

【读书笔记】网站的伸缩性架构

前言 本菜鸡之前有过一篇读书笔记,整理了李智慧老师所著的《大型网站技术架构》一书中叙述的五个架构要素。这五个要素分别为 性能、可用性、伸缩性、扩展性、安全性。本文针对伸缩性这一要素进行简单的讨论,内容也主要参考自《大型网站技术架构》这本书…

【读书笔记】网站的可扩展架构

前言 本菜鸡之前有过一篇读书笔记,整理了李智慧老师所著的《大型网站技术架构》一书中叙述的五个架构要素。这五个要素分别为 性能、可用性、伸缩性、扩展性、安全性。本文针对扩展性这一要素进行简单的讨论,内容也主要参考自《大型网站技术架构》这本书…

【读书笔记】网站的安全架构

前言 本菜鸡之前有过一篇读书笔记,整理了李智慧老师所著的《大型网站技术架构》一书中叙述的五个架构要素。这五个要素分别为 性能、可用性、伸缩性、扩展性、安全性。本文针对安全性这一要素进行简单的讨论,内容也主要参考自《大型网站技术架构》这本书…

[导入]国内web2.0网站的logo集合

国内web2.0网站的logo集合,收集过程中难免有遗漏,请到 http://www.yupoo.com/word/web2补上甘先生 2006-02-13 18:03 文章来源:http://www.blogjava.net/gump/archive/2006/02/13/30487.html转载于:https://www.cnblogs.com/cngump/archive/2006/05/16/401486.html

[转载]说说大型高并发高负载网站的系统架构

说说大型高并发高负载网站的系统架构 By Michael转载请保留出处:俊麟 Michael’s blog (http://www.toplee.com/blog/?p71) Trackback Url : http://www.toplee.com/blog/wp-trackback.php?p71 我在CERNET做过拨号接入平台的搭建,而后在Yahoo&372…

PHP网站事件流,详解DOM事件流的三个阶段

事件发生时会在元素节点之间按照特定的顺序传播,这个传播过程即DOM事件流。DOM事件流分为三个阶段,分别为:捕获阶段:事件从Document节点自上而下向目标节点传播的阶段;目标阶段:真正的目标节点正在处理事件…

Windows 7 即将发布 - 91%的应用程序、92%的硬件设备和95%的网站完美兼容

Windows Vista的兼容性往往被大家所诟病,Windows 7打算一血前仇了。经过了长达2年的兼容性测试和改进,已经有91%的应用程序、92%的硬件设备和95%的网站完美兼容Windows 7。在这个过程中,作为微软在北京的Windows 7兼容性测试支持中心&#xf…

网站CSS背景图片抓取工具

工具介绍:  1)分析网页,获取页面图片。  2)分析网页引用CSS文件,获取背景图片。  3)批量下载。要点:  1)正则 LINK_PATTERN:获取页面所有连接 BACKGROUND_IMAGE_…

网站服务器基本安全设置

一、服务器系统安装建议1、不安装多余组件,停止不需要的服务;2、www服务单独分区;3、补丁打全;二、登录账号与口令安全1、设置密码使用、数字加大小写字母不少余8位;# vi /etc/login.defs找到以下:PASS_MAX_DAYS 99…

查看网站服务器版本,查看服务器版本

您正在运行的 Tableau Server 的版本很重要。它确定您可以访问的功能和能力。在您进行升级时,版本也很重要,因为在某些情况下,您升级的方式取决于您从中升级的版本,以及要升级到的版本。了解如何查找版本之后,就很容易…

Java开发者必去的20个英文技术网站

为什么80%的码农都做不了架构师?>>> http://www.javaalmanac.com - Java开发者年鉴一书的在线版本. 要想快速查到某种Java技巧的用法及示例代码, 这是一个不错的去处. http://www.onjava.com - OReilly的Java网站. 每周都有新文章. http://java.sun.c…

从零开始建站-4

为什么80%的码农都做不了架构师?>>> 这里记录使用wordpress建站中遇到的问题 1、增加外网访问功能 登录数据库,在wp_options表中,修改字段 siteurl 和home均为 /wordpress,这里的wordpress的绝对路径为/var/www/htm…