排序的概念(选择排序1)

简介:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
                                      排序(比较与交换)
排序的稳定性:
     排序之前,R[i]在R[j]前面,排序后,R[i]还在R[j]前面,则这个排序方法是稳定的。否则这个排序
  方法是不稳定的。
  外排序:----依赖---》内排序
      待排序的数据元素数量很大,整个序列的排序过程不可能在内存中完成。
  内排序:
      整个排序过程不需要访问外存便能完成。
                                       排序的审判
  1:时间性能(重要)
     关键性能差异性体现在比较和交换的数量。
  2:辅助存储空间
      为完成排序操作需要的额外的存储空间。
      必要时可以时间换空间。
  3:算法的实现复杂性
      过于复杂的排序算法会影响代码的可读性和可维护性,也可能会影响排序的性能。

                                                          选择排序

基本思想:

    每一趟在后面n-i个待排的数据元素中选出关键字最小的元素,作为有序元素序列的第i个元素。

实例: js

<script type="text/javascript">

  function Arithmetic(){

  

  }

  Arithmetic.selection=function(a){

   var min =0;

   var max =0;

   for(var i=0;i<a.length;i++){

   min=i;//标记最小

   for(var j=i;j<a.length-1;j++){

   if(a[min]>a[j+1]){

   min=j+1;

   }//找出最小并标记

   }

   max=a[i];

1
< br >

   a[i]=a[min];//交换

   a[min]=max;


   }

   console.log(a);

   }

  var arr =[8,4,2,7,1,42,20,5,1,0,2,7];

  Arithmetic.selection(arr);

</script>



本文转自 沉迷学习中 51CTO博客,原文链接:http://blog.51cto.com/12907581/1930347,如需转载请自行联系原作者

相关文章
|
4月前
|
搜索推荐
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】
【数据结构常见七大排序(三)上】—交换排序篇【冒泡排序】And【快速排序】
|
4月前
|
搜索推荐
【数据结构常见七大排序(二)】—选择排序篇【直接选择排序】And【堆排序】
【数据结构常见七大排序(二)】—选择排序篇【直接选择排序】And【堆排序】
|
6月前
|
搜索推荐 算法 C++
[数据结构]-玩转八大排序(一)&&插入排序&&选择排序
[数据结构]-玩转八大排序(一)&&插入排序&&选择排序
|
6月前
|
搜索推荐 测试技术
数据结构排序(一.基本概念、插入排序和希尔排序实现)
数据结构排序(一.基本概念、插入排序和希尔排序实现)
56 0
|
算法 C语言
【数据结构--八大排序】之冒泡排序+选择排序+插入排序
文章目录 一、冒泡排序 1.原理: 2.流程图: 3.代码: 4.测试结果: 5.时间复杂度 二、选择排序 1.原理: 2.流程图: 3.代码: 4.测试结果: 5.时间复杂度
|
机器学习/深度学习 人工智能
|
机器学习/深度学习 人工智能