27冒泡排序

# 1. 冒泡排序

  • 冒泡排序概述

    • 一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面,依次对所
      有的数据进行操作,直至所有数据按要求完成排序
  • 如果有n个数据进行排序,总共需要比较n-1次

  • 每一次比较完毕,下一次的比较就会少一个数据参与

2. 冒泡排序代码实现(理解)

/*
   冒泡排序:
       一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面,
       依次对所有的数据进行操作,直至所有数据按要求完成排序
*/

public class Rank {
   public static void main(String[] args) {
       int[] arr = {24, 69, 80, 57, 13};
       System.out.println("排序前:" + arrayToString(arr));

       int [] arrafter = arr(arr);
       System.out.println("排序后:"+arrayToString(arrafter));

   }

   //冒泡排序算法
   public static int[] arr(int[]arr){
       for (int i = 0;i<arr.length-1;i++){
           for(int j = 0;j<arr.length-1-i;j++){
               if (arr[j]>arr[j+1]){
                   int temp = arr[j];
                   arr[j]=arr[j+1];
                   arr[j+1]=temp;
               }

           }
       }
       return arr;
   }

   //把数组中的元素按照指定的规则组成一个字符串:[元素1, 元素2, ...]
   public static String arrayToString(int[] arr) {
       StringBuilder sb = new StringBuilder();
       sb.append("[");
       for (int i = 0; i < arr.length; i++) {
           if (i == arr.length - 1) {
               sb.append(arr[i]);
           } else {
               sb.append(arr[i]).append(", ");
           }
       }
       sb.append("]");
       String s = sb.toString();
       return s;
   }
}
posted @ 2021-09-19 18:40  zjh1170  阅读(32)  评论(0)    收藏  举报