码迷,mamicode.com
首页 > 编程语言 > 详细

visualgo 数据结构与算法可视化工具

时间:2015-05-28 15:46:14      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

推荐可视化数据结构与算法工具 http://zh.visualgo.net/

技术分享

点第一个图排序 进来后如图

技术分享

右上角的两种模式:教学模式  浏览模式

下面我来实操选择排序的流程

点最上头的SELECT

点左下角的Create

技术分享

点Random随机生成也可以,也可以自己输入数字. 注意只能是1-50

技术分享

注意不要点Sorted,Nearly Sorted

然后go

你会发现可视化区域

技术分享

同时打开右下角的两个框框

技术分享

这是我们将要工作的界面

现在点Create下的Sort

技术分享

go

可视化区域在动啊,把最左下角移动到slow,然后按键盘的←(方向键的左键,可不是回退哦)

也就是你可以用方向键的左右来控制动画的运行.

 

伪代码看不懂可以不看,重点是橙色的部分和动画

选择排序第一步

Set 1 as the current minimum, then iterate through the remaining unsorted elements to find the true minimum.

把第一个数1 设为当前最小值,遍历未排序的元素寻找正确的最小值.

技术分享

技术分享

技术分享

技术分享

第二步

技术分享

技术分享

此时发现了比3小的,

技术分享

技术分享

3这一轮后面的值都是在跟1比较.

 

综上:就可以理解了为甚么选择排序要用到三个变量.   //注意可视化区域除了原来的 浅蓝色外 有三种颜色.

SELECT:第一个跟2,3,4后面的比较选择最小的.  //依次比较依次遍历,这个是内遍历(2)

第二个....

 

这个是外遍历 (1)

但是我们不可能每次选到的那个数都是最小值(除非已排好),若发现那轮的第一个数还小的,我们要把最小值的荣誉颁给他,后面的人就跟他比,若还比他小就再颁给另外的更小的.

所以我们需要一个变量来存储最小值.  (3)

 

visualgo 数据结构与算法可视化工具

标签:

原文地址:http://www.cnblogs.com/xzqhextt/p/4535793.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!