Rumah  >  Artikel  >  hujung hadapan web  >  直观了解用js实现的冒泡排序算法及统计相邻数交换次数

直观了解用js实现的冒泡排序算法及统计相邻数交换次数

零下一度
零下一度asal
2017-04-28 10:08:121882semak imbas

这篇文章主要介绍了JavaScript实现的冒泡排序法及统计相邻数交换次数,结合实例形式分析了javascript冒泡排序的实现技巧及针对交换次数的统计方法,便于更直观的了解冒泡排序算法,需要的朋友可以参考下

本文实例讲述了JavaScript实现的冒泡排序法及统计相邻数交换次数。分享给大家供大家参考,具体如下:

<html>
 <head>JS冒泡排序</head>
 <body>
  <script>
   var arr=[-1,-2,-30,-4,-5,-6];
   var flag=false;     //判断相邻两个数是否交换过
   var n=0;      //计算交换次数
   for(var i=0;i<arr.length-1;i++){    //i表示的是每次找出来的最大或最小数需要的次数
    for(var j=0;j<arr.length-i-1;j++){
     if(arr[j]>arr[j+1]){
      var temp=arr[j];
      arr[j]=arr[j+1];
      arr[j+1]=temp;
      flag=true;
     }
     if(flag){
      flag=false;
      n++;
     }else{
      continue;
     }
    }
   }
   document.write("n="+n+"<br />");
     document.write("总共交换了"+n+"次后的结果是:"+"<br />");
   for(var k=0;k<arr.length;k++){
    document.writeln(arr[k]+" ");
   }
  </script>
 </body>
</html>

运行效果图如下:

Atas ialah kandungan terperinci 直观了解用js实现的冒泡排序算法及统计相邻数交换次数. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn