zoukankan      html  css  js  c++  java
  • 选择排序算法

      选择排序:是一种非常简单直观的算法。

      问题:有一组数字[23,34,12,756,49,56],需要对它们进行从小到大的排序。

      原理:首先让没有排序的数字进行比较,将最小的数字排在排序序列的第一位;然后,再从剩余地未排序的数字中找出最小的数字,放在排序序列的第二位;以此类推...

      

    <script language="javascript">
    /*javascript描述的选择排序算法*/
    function main(){
      var arr = new Array(10),
          count = 10;
      /*获取10位的随机数组*/
      arr = getarr(count,arr);
      document.write("排序前的数组:" + arr + "<br />");
      /*排序*/
      arr = selectionSort(count,arr);
      document.write("排序后的数组:" + arr);
    }
    function getarr(count,arr){
      var i;
      for(i=0;i<10;i++){
        arr[i] = Math.round(Math.random()*100);
      }
      return arr;
    }
    /*选择排序算法*/
    function selectionSort(count,arr){
      var i,j,temp;
      for(i=0;i<count;i++){
        for(j=i;j<count;j++){
          if(arr[i]>arr[j]){
            temp = arr[j];
            arr[j] = arr[i];
            arr[i] = temp;
          }
        }
      }
      return arr;
    }
    main();
    </script>

    下面是利用javascript中内置的对象方法

    <script language="javascript">
    function main(){
      /*获取10位的随机数组*/
      var arr = new Array(10),
          count = 10;
      arr = getarr(count,arr);
      document.write("排序前的数组:" + arr + "<br />");
      /*数组排序*/
      arr.sort(compare);
      document.write("排序后的数组:" + arr);
    }
    function getarr(count,arr){
        var i;
        for(i=0;i<count;i++){
            arr[i] = Math.round(Math.random()*100);
        }
        return arr;
    }
    /*排序函数*/
    function compare(a,b){
      return a - b;
    }
    main();
    </script>
  • 相关阅读:
    Abp 领域事件简单实践 <一>
    Abp session和Cookie
    Abp 聚合测试
    反向代理
    Angular 变更检测
    VS 之github
    Docker 启动SQLServer
    查出第二大的数是多少
    DDD 理解
    ActionBar的简单应用
  • 原文地址:https://www.cnblogs.com/wang-jiang/p/4121481.html
Copyright © 2011-2022 走看看