首页 > Python, 编程工具, 编程语言 > 一个显示排序过程的Python脚本

一个显示排序过程的Python脚本

2009年4月15日 发表评论 阅读评论 8,651 人阅读    

之前向大家介绍过《一个排序算法比较的网站》,那个网站用动画演示了各种排序算法,并分析了各种排序算法。这里,要向大家推荐一个Python脚本,其可以把排序的过程给显示出来。

下图是“冒泡排序”的一个示例,其中:

  1. 折线表示了各个元素的位置变化。
  2. 折线的深浅表示了元素的大小。越深则越大。

bubble

同样,还有其它一些排序算法的图片:

堆排序(Heap Sort)

heap

选择排序(Selection)

selection

快速排序(Quick)

quick

Shell排序

shell

插入排序(Insertion)

listinsertion

你可以使用如下的Python代码来制作这些图片:(需要 Cairo图片库支持)

Python排序脚本

这个脚本参数如下:

  • -a 表示使用什么样的算法,取值为"quick", "heap", "selection", "insertion", "bubble", "shell"。
  • -n 表示要排序的数据个数。
  • -f 表示输入文件。
  • -p 表示文件前缀。
  • -d 表示输出顺序。
  • -x 图片宽度。
  • -y 图片高度。
  • -l 所有线的宽度。
  • -b 边界宽度。

使用示例如下:

./visualise.py -l 6 -x 700 -y 300 -n 15

文章:来源





好烂啊有点差凑合看看还不错很精彩 (8 人打了分,平均分: 4.88 )
Loading ... Loading ...
  1. 2010年7月24日10:03 | #1

    这个开眼界了…回去试试看

  2. elecalion
    2011年3月18日14:22 | #2

    参数i没有值的情况下会报错
    parser.add_option(
    “-i”,
    dest=”highlight”,
    type=”int”,
    default=[],

  1. 2010年7月12日08:33 | #1
  2. 2010年7月13日18:59 | #2
  3. 2010年7月16日13:45 | #3
  4. 2010年7月23日21:45 | #4
  5. 2010年7月24日00:55 | #5
  6. 2010年7月25日11:30 | #6
  7. 2010年7月31日01:48 | #7
  8. 2010年10月19日22:08 | #8
  9. 2010年10月20日01:09 | #9
  10. 2010年12月30日00:57 | #10
  11. 2011年1月29日09:25 | #11
  12. 2011年3月18日10:19 | #12
  13. 2011年3月27日23:50 | #13
  14. 2011年5月15日12:32 | #14
  15. 2011年5月15日12:50 | #15
  16. 2011年5月26日10:40 | #16
  17. 2011年5月29日14:57 | #17
  18. 2011年6月23日09:10 | #18
  19. 2011年6月24日14:44 | #19
  20. 2011年10月30日14:13 | #20

无觅相关文章插件,快速提升流量