数据结构--冒泡排序

本篇文章主要梳理冒泡排序相关知识。

1、基本认识

(1)冒泡排序(Bubble Sort)一种交换排序,时间复杂度为O(n^2)。

(2)基本思想:两两比较相邻的两个数,如果两个数的大小顺序相反则进行交换,直到没有相反顺序的两个数为止。

(3)以升序冒泡为例:每趟排序过程中通过两两比较相邻元素,将小的数字放到前面,大的数字放到后面。

(4)代码实现

复制代码
package com.hh.algorithm.sort;

public class BubbleSort {

    public static void main(String[] args) {
        int[] arr = {99,3,4,1,3,4,5,6,7,3,1};
        BubbleSort.bubble(arr);
        for (int i=0; i<arr.length; i++){
            System.out.print(arr[i]+" ");
        }
    }
    public static void bubble(int[] arr) {
        for (int i=0; i<arr.length; i++){
            for (int j=0;j<arr.length-i-1; j++){
                if (arr[j] > arr[j+1]){
                    int temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
    }
}

运行结果

本文为学习笔记,所参考文章均已附上链接,若有疑问请私信!

创作不易,如果对你有点帮助的话麻烦点个赞支持一下!

新手小白,欢迎留言指正!

相关推荐
普马萨特18 分钟前
地理空间索引技术选型指南:GeoHash, Google S2 与 Uber H3
数据结构
knight_9___1 小时前
大模型project面试4
人工智能·python·深度学习·算法·面试·agent
l1t1 小时前
DeepSeek总结的欢迎来到 ORDER BY 丛林
数据库·算法
谙弆悕博士1 小时前
【附C源码】二叉搜索树的C语言实现
c语言·开发语言·数据结构·算法·二叉树·项目实战·数据结构与算法
宵时待雨1 小时前
回溯算法专题2:二叉树中的深搜
开发语言·数据结构·c++·笔记·算法·深度优先
刀法如飞2 小时前
JavaScript 数组去重的 20 种实现方式,学会用不同思路解决问题
前端·javascript·算法
洛水水2 小时前
【力扣100题】46.单词拆分
算法·leetcode·职场和发展
MicroTech20252 小时前
量子安全赋能协同智能,微算法科技(NASDAQ :MLGO)研发PQS-BFL后量子区块链联邦学习框架
科技·算法·安全
平行侠2 小时前
A19 工业设备故障决策树智能诊断系统
算法·决策树·机器学习
澈2072 小时前
平衡二叉树:AVL与红黑树终极对比
数据结构·c++·红黑树