美文网首页
排序算法-直接选择排序

排序算法-直接选择排序

作者: 石头怪 | 来源:发表于2018-02-08 17:23 被阅读10次

    直接选择排序

    通过设置标志位,将标志位的数字与标志位后最小的数字进行交换,递增标志位,知道标志位到达最后一位。

    代码实现

    直接选择排序.png

    结果

    直接排序结果.png

    具体过程

    下面展示的是通过一个Android的程序来实现的直接选择排序的一个变化过程(数据随机生成 ,蓝色圆圈代表选中的最小,黑色代码排序好的,红色代表未排序的)


    直接选择排序动画显示.gif
    • 第一趟:从第一个开始选择整个列表中最小数字5,将5与第一个数字交换。
    • 第二趟 :从第二个开始选择整个列表中最小数字9,将9与第二个数字交换。
      ......
      直到最后从小到大排完。

    总结

    直接选择排序的空间时间复杂度都为:O(n²),因此从效率上来讲,如果数据足够多的时候,时间效率上不会很高。但从代码算法上来看,所占用的空间小,实现简单。

    另附java代码实现:


    直接选择排序-java.png

    相关文章

      网友评论

          本文标题:排序算法-直接选择排序

          本文链接:https://www.haomeiwen.com/subject/hxbttftx.html