首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >算法-排序算法-冒泡排序

算法-排序算法-冒泡排序

作者头像
joshua317
发布2021-03-08 12:39:35
发布2021-03-08 12:39:35
1K00
代码可运行
举报
文章被收录于专栏:技术博文技术博文
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
复制
/**
 * 排序算法-冒泡排序
 * 冒泡排序(Bubble Sort)算法是所有排序算法中最简单、最基本的一种。
 * 冒泡排序算法的思路就是交换排序,通过相邻数据的交换来达到排序的目的。
 * 冒泡排序的思路:
 * (1)对数组中的各数据,依次比较相邻的两个元素的大小。
 * (2)如果前面的数据大于后面的数据,就交换这两个数据。经过第一轮的多次比较排序后,便可将最小的数据排好。
 * (3)再用同样的方法把剩下的数据逐个进行比较,最后便可按照从小到大的顺序排好数组各数据。
 * 冒泡排序算法在对n个数据进行排序时,无论原数据有无顺序,都需要进行(i = n-1)次的外层循环。
 * 每次内部的排序随着步骤的递增,需要排序的数据逐步减少,所以需要 (n - i)次的内层循环,注意:i从1开始
 */
import java.util.*;
public class BubbleSort {
    public static void main(String[] args) {
        //生成一个10个的随机数组
        int size = 10;
        int[] ints = new int[size];
        for (int i = 0; i < size; i++) {
            ints[i] = (int)(Math.random() * 100 );
        }
        System.out.println("排序前的数组:" + Arrays.toString(ints));

        for (int i = 1; i < size; i++) {//外层循环:进行(size-1)次
            for (int j = 0; j < size - i; j++) {//内层循环:进行(size - i)次
                if (ints[j] > ints[j+1]) {
                    int temp = ints[j];
                    ints[j] = ints[j+1];
                    ints[j+1] = temp;
                }
            }

            System.out.println("第" + i + "步,排序结果为:" + Arrays.toString(ints));
        }
        System.out.println("最终排序后的数组:" + Arrays.toString(ints));
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-03-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档