首页 > 其他分享 >冒泡排序

冒泡排序

时间:2023-04-12 17:12:31浏览次数:28  
标签:arr console log 冒泡排序 flag var

var arr = [3,2,1,4,5,6,7,8,9];
console.log('原数组:'+ arr);// 标记原数组
function bubbleSortBetter(arr){
    //外层循环,控制趟数,每一次找到一个最大值
    for (var i = 0; i < arr.length - 1; i++) {
       // 内层循环,控制比较的次数,并且判断两个数的大小
       var num = 1;
       var flag = true;
       for (var j = 0; j < arr.length - 1 - i; j++) {
          // 如果前面的数大,放到后面(当然是从小到大的冒泡排序)
           if (arr[j] > arr[j+1]) {
                var temp = arr[j+1];
                arr[j+1] = arr[j];
                arr[j] = temp;
                flag = false;
                console.log('第' + (i+1) + '趟排序的第'+(num++)+'次交换:' + arr); // 标记交换
            }
 
       }
       if(flag){
          break;
       }
       console.log('第' + (i+1) + '趟排序:' + arr);// 标记趟数
    }
    return arr;
}
bubbleSortBetter(arr);

标签:arr,console,log,冒泡排序,flag,var
From: https://www.cnblogs.com/hxy--Tina/p/17310441.html

相关文章

  • 算法学习之冒泡排序【C语言】
    冒泡排序排序规则冒泡排序的规则是相邻的两个数字依次比较,如果前面的数字比后面的数字大,则交换它们的位置,否则保持不变,直到遍历完所有的数字。这个过程会不断地进行,直到所有的数字都按照从小到大的顺序排列好。双层循环在冒泡排序的算法中,需要使用两层循环来实现排序功能。for(int......
  • go语言学习-冒泡排序
    冒泡排序冒泡排序属于交换类的排序算法,比如有一段乱序的数,591681464925463第一轮迭代:从第一个数开始,依次比较相邻的两个数,如果后面的一个数比前面的一个数大,那么交换位置,直接到处理最后一个数,最后这个数是最大的第二轮迭代,因为最后一个数已经是最大的了,重复第一轮操作,......
  • java -- System类和冒泡排序
    Systemjava.lang.System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作。System类私有修饰构造方法,不能创建对象,直接类名调用。exit//终止当前运行的Java虚拟机,非零表示异常终止publicstaticvoidexit(intstatus)currentTimeMillis//返回当前时间(......
  • 冒泡排序算法(超级详细)
    泡排序是一种简单的排序算法,它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序。一般情况下,称某个排序算法稳定,指的是当待排序序列中有相同的......
  • Java 冒泡排序
    冒泡排序冒泡排序由嵌套循环完成,并分为外循环和内循环内循环负责比较数组中,两个相邻的元素,如果第一个数比第二个数大,则交换两者的位置,相邻两数依次循环进行比较每完成一次内循环比较(即外循环走完一步)都会产生一个当次内循环最大或者最小的数字并放在数组末尾所以外循......
  • java方法- 冒泡排序
    冒泡排序冒泡排序是最为出名的排序之一,总共有八大排序冒泡的代码是两层循环,外层冒泡轮数,里层依次比较算法时间复杂度为O(n2)优化优化方法之一 ......
  • 练习——简易的冒泡排序
    packagecom.q1u.array;importjava.util.Arrays;//冒泡排序//1.比较数组中两个相邻的元素,如果第一个数大于第二个,交换两者位置//2.每一次比较,都会产生一个最大或者......
  • Java学习----冒泡排序
    冒泡排序importjava.util.Arrays;publicclassMaoPaoPaiXu{publicstaticvoidmain(String[]args){int[]a={1,2,3,5,7,9,22,44,63,75};......
  • C语言—模范qsort()实现一个冒泡排序的通用算法
    目录一、库方法qsort参数解释二、冒泡排序解释三、模拟实现1、冒泡排序函数2、数值交换函数3、测试函数4、运行结果5、源代码一、库方法qsort参数解释二、冒泡排序解释三、......
  • 用冒泡排序法实现多种类型的数据排序
    #define_CRT_SECURE_NO_WARNINGS#include<stdio.h>voidswap(char*buf1,char*buf2,intwidth){ inti=0; for(i=0;i<width;i++)//实现每个字节的交换,......