新浪新闻客户端

JavaScript算法之选择排序

JavaScript算法之选择排序
2020年08月08日 21:40 新浪网 作者 八卦年复一年

  选择排序算法通过不停地在数组中未排序的部分找到最小的元素,然后把它放在开始处实现对数组的排序。使用此算法在一个数组中可以分为两个子数组:

  1)已经排序的子数组。

  2)未排序的剩余子数组。

  在选择排序的每次迭代中,从未排序的子数组中选取最小元素,并将其移动到已排序的子数组中。

  以下示例解释了上述步骤:

  

  下面的动图展示了这个过程:

  

  代码实现

  

  时间复杂度

  O(n2) 即 O(n * n)  因为有两层嵌套循环。

  选择排序的好处是它不会产生超过0(n)的交换,并且在内存写操作成本很高的时候很有用。它不需要额外的空间即可完成排序操作。

特别声明:以上文章内容仅代表作者本人观点,不代表新浪网观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与新浪网联系。
权利保护声明页/Notice to Right Holders

举报邮箱:jubao@vip.sina.com

Copyright © 1996-2024 SINA Corporation

All Rights Reserved 新浪公司 版权所有