冒泡排序

package com.xcx.spots.test;

import java.util.ArrayList;
import java.util.List;

/**

  • @ProjectName: spots
  • @Package: com.xcx.spots.test
  • @ClassName: maopao
  • @Author: nh
  • @Description:
  • @Date: 2020/6/18 8:25
  • @Version: 1.0
    */

public class maopao {
//冒泡排序法
public static void main(String[] args){
int[] a = {2,5,1,8,7,4,3};
List list = new ArrayList<>();
int temp = 0; // 用来交换的临时数
// 要遍历的次数
for (int i = 0; i <=a.length-1; i++) {
// 从后向前依次的比较相邻两个数的大小,遍历一次后,把数组中第i小的数放在第i个位置上
for (int j = a.length - 1; j > i; j–) {
// 比较相邻的元素,如果前面的数大于后面的数,则交换
if (a[j - 1] > a[j]) {
temp = a[j - 1];
a[j - 1] = a[j];
a[j] = temp;
}
}
// System.out.format(“第 %d 趟:\t”, i);
}

    for (Integer str: a) {
        System.out.println(str);
    }
}
正常排序从小到大
public static void main(String[] args){
    int[] arr={1,3,5,8,9,7,6,2,4,3,7,6};
    maopao m = new maopao();
    m.bubbleSort(arr);
    for (Integer str: arr) {
        System.out.println(str);
    }
}
//从大到小排序
public static void main(String[] args){
    //定义一个数组
    int[] arr={4,5,2,6,2,4,8,9,6,1,9,55,66,11,22};
    System.out.print("原来的数组:[");
    for(int i=0;i<arr.length;i++){
        if(i==arr.length-1){
            System.out.println(arr[i]+"]");
        }else{
            System.out.print(arr[i]+",");
        }
    }
    //创建对象(因为写方法没有使用static关键词,需创建对象后在调用方法)
    maopao demo=new maopao();
    //返回值类型是int数组,所以需要用数组接收
    arr=demo.bubbleSort(arr);
    //遍历输出
    System.out.print("排序后的数组:[");
    for(int i=0;i<arr.length;i++){
        if(i==arr.length-1){
            System.out.println(arr[i]+"]");
        }else{
            System.out.print(arr[i]+",");
        }
    }
}
//排序
public int[] bubbleSort(int[] arr){
    //第一个for循环是程序需要执行要走多少趟
    for(int i=0;i<arr.length-1;i++){
        //第二个for循环是每趟需要比较多少次
        for(int j=0;j<arr.length-1-i;j++){
            //此处是从大到小排列
            if(arr[j]<arr[j+1]){
                //定义一个临时变量temp
                int temp=arr[j];
                arr[j]=arr[j+1];
                arr[j+1]=temp;
            }
        }
    }
    return arr;
}

}

展开阅读全文

Windows版YOLOv4目标检测实战:训练自己的数据集

04-26
©️2020 CSDN 皮肤主题: 游动-白 设计师: 上身试试 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值