冒泡排序

xiaoxiao2022-06-11  25

class ArrayBub{ private long[]a; //封装long类型数组a[] private int nElems; //数据量 public ArrayBub(int max){ //构造 a=new long[max]; //创建一个数组 nElems=0; //初始为空 } //将元素添加到数组中 public void insert(long value){ a[nElems]=value; nElems++; } //显示数组内容 public void display(){ for(int j=0;j<nElems;j++) //显示每个元素 System.out.println(a[j]+" "); //打印数据 System.out.println(" "); } //冒泡排序主代码 public void bubbleSort(){ int out, in; for (out=nElems-1;out>1;out--){//外循环,找到需要比较的最后的位置 for(in=0;in<out;in++){ //内循环,比较outer前面的书籍 if(a[in]>a[in+1]){ //比较大小,将大数据排在后面 swap(in,in+1); } } } } //swap方法交换(最好写到程序内部,减少调用) private void swap(int one,int two){ long temp=a[one]; a[one]=a[two]; a[two]=temp; } } class BubbleSortApp{ public static void main(String[] args){ int maxSize=100; //数组大小 ArrayBub arr; //涉及到的数组 arr=new ArrayBub(maxSize); //创建数组 //向数组添加数据 arr.insert(77); arr.insert(42); arr.insert(85); arr.insert(12); arr.insert(69); arr.insert(98); arr.insert(23); //数组打印 arr.display(); //将数组中数据排序 arr.bubbleSort(); //再次打印数组数据 arr.display(); } }

 

转载请注明原文地址: https://www.6miu.com/read-4930467.html

最新回复(0)