展开

使用Java完成冒泡排序

发布于 2021-09-06 16:43:36     浏览 256

使用Java完成冒泡排序

问题解析:

【】

1、 1.从大到小排序:新建一个Java类,定义一个方法名(如:bubbleSort),这边返回值类型用int数组,并传递一个int类型数组,同时也return该数组。 2、 代码为: 3、 public int[] bubbleSort(int[] arr){ 4、 return arr; 5、 } 6、 如图所示: 7、 2.冒泡排序的原理:比较相邻的元素,如果第一个比第二个小,就交换他们两个。 8、 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。 9、 代码为: 10、 //冒泡排序 11、 public int[] bubbleSort(int[] arr){ 12、 //第一个for循环是程序需要执行要走多少趟 13、 for(int i=0;i<arr.length-1;i++){ 14、 //第二个for循环是每趟需要比较多少次 15、 for(int j=0;j<arr.length-1-i;j++){ 16、 //此处是从大到小排列 17、 if(arr[j]<arr[j+1]){ 18、 //定义一个临时变量temp 19、 int temp=arr[j]; 20、 arr[j]=arr[j+1]; 21、 arr[j+1]=temp; 22、 } 23、 } 24、 } 25、 return arr; 26、 } 27、 如图所示: 28、 3.最后在main函数中创建对象,并调用方法,最后遍历输出。 29、 代码为: 30、 public static void main(String[] args) { 31、 //定义一个数组 32、 int[] arr={4,5,2,6,2,4,8,9,6,1,9,55,66,11,22}; 33、 System.out.print("原来的数组:["); 34、 for(int i=0;i<arr.length;i++){ 35、 if(i==arr.length-1){ 36、 System.out.println(arr[i]+"]"); 37、 }else{ 38、 System.out.print(arr[i]+","); 39、 } 40、 } 41、 //创建对象(因为写方法没有使用static关键词,需创建对象后在调用方法) 42、 BubbleSort demo=new BubbleSort(); 43、 //返回值类型是int数组,所以需要用数组接收 44、 arr=demo.bubbleSort(arr); 45、 //遍历输出 46、 System.out.print("排序后的数组:["); 47、 for(int i=0;i<arr.length;i++){ 48、 if(i==arr.length-1){ 49、 System.out.println(arr[i]+"]"); 50、 }else{ 51、 System.out.print(arr[i]+","); 52、 } 53、 } 54、 } 55、 如图所示: 56、 4.如果需要从小到大排序,只需要将判断条件进行更改即可。 57、 代码为: 58、 //冒泡排序 59、 public int[] bubbleSort(int[] arr){ 60、 //第一个for循环是程序需要执行要走多少趟 61、 for(int i=0;i<arr.length-1;i++){ 62、 //第二个for循环是每趟需要比较多少次 63、 for(int j=0;j<arr.length-1-i;j++){ 64、 //此处是从大到小排列 65、 if(arr[j]>arr[j+1]){ 66、 //定义一个临时变量temp 67、 int temp=arr[j]; 68、 arr[j]=arr[j+1]; 69、 arr[j+1]=temp; 70、 } 71、 } 72、 } 73、 return arr; 74、 }

相关推荐

猜你可能喜欢

点击加载更多