首页 > 其他分享 >冒泡排序

冒泡排序

时间:2024-09-16 20:03:00浏览次数:1  
标签:temp int void 冒泡排序 length static public

点击查看代码
package Sort;  
import java.util.Arrays;  
  //每一轮外层循环都会固定一个最大或最小的数到后面去,然后内层循环继续从0开始到最后未排序的数组末项
public class BubbleSort {  
    public static void main(String[] args) {  
        int[] a = {2, 3, 0, 8, 4, 10, 6, 5};  
        // 升序  
        for (int i = 0; i < a.length - 1; i++) {  
            for (int j = 0; j < a.length - i - 1; j++) { // 注意这里,内层循环的条件是 a.length - i - 1  
                if (a[j] > a[j + 1]) {  
                    int temp = a[j];  
                    a[j] = a[j + 1];  
                    a[j + 1] = temp;  
                }  
            }  
        }  
        System.out.println(Arrays.toString(a));  
int []c ={2,3,0,8,4,10,6,5};
        for(int i=c.length-1;i>0;i--){
            findMax(c,i);
        }
        System.out.println(Arrays.toString(c));
    }
    public static void findMax(int []a,int n){
        for(int i=0;i<n;i++){
            if(a[i]>a[i+1]){
                swap(a,i,i+1);
            }
        }

    }
    public static void swap(int []a,int n,int n2){
        int temp=a[n];
        a[n]=a[n2];
        a[n2]=temp;
    }
}
    

~! [地址]https://blog.csdn.net/luo_666666/article/details/141338634?spm=1001.2014.3001.5501

标签:temp,int,void,冒泡排序,length,static,public
From: https://www.cnblogs.com/hutbluo/p/18416551

相关文章

  • 冒泡排序
    1.插入排序1.1基本思想直接插入排序是一种简单的插入排序法。其基本思想是把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中,直到所有的记录插入完为止,得到一个新的有序序列。1.2直接插入排序当插入第i(i>=1)个元素时,前面的array[0],array[1],…,array[i......
  • 冒泡排序理解
    1.1思路冒泡排序是一种简单的排序方法。基本思路是通过两两比较相邻的元素并交换它们的位置,从而使整个序列按照顺序排列。该算法一趟排序后,最大值总是会移到数组的最后面,那么接下来就不用再考虑这个最大值。一直重复这样的操作,最终就可以得到排序完成的数组。这种算法是稳......
  • [c++][笔记]浅谈几种排序方式---冒泡排序,选择排序,桶排序
     一、algorithm里的sort函数 #include<cstdio>//数据小的可以用iostream#include<algorithm>//不能忘记算法库,否则会编译失败。usingnamespacestd;intmain(){intn;scanf("%d",&n);inta[n+5]={};for(inti=1;i<=n;i++){......
  • C语言 跟着Mr.狠人一起实现冒泡排序
    冒泡排序(bubblesort)基本原理很简单,如图所示: 这边方便大家快速观察顺序:这边我们可以观察出冒泡排序是两两相比,每一趟都能确定最后一位成为本趟的最大值。 10个数字9趟就完成了。那我们试着写写代码吧voidbubble_sort(intarr[],intsz){ inti=0;//趟数 for......
  • 「NOI2022 D2T2 冒泡排序」题解
    题意uoj768构造长为\(n\)的序列\(a\),满足\(m\)条限制:\(\min_{j=L_i}^{R_i}\{a_j\}=V_i\),要求逆序对数最少题解21pts暴力先进行一些观察:逆序对只关心相对大小,所以\(\foralla_j\)必然\(\in\{V_i\}\),可以完全离散化经典结论:若\(i<j,a_i>a_j\)且交换后合法,则交换......
  • 冒泡排序算法
    冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。遍历数列的工作是重复进行的,直到没有再需要交换的元素为止,这意味着数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(或说是......
  • python冒泡排序
    1、什么是冒泡排序  BubbleSort是最简单和通用的排序方法,基本思想是:在待排序的一组数据中,将相邻的两个数进行比较,若前面的数比后面的数大,就交换两个数,否则不交换;如此下去,直至完成最终排序。由此可得,在排序的过程中,大的数据往下沉,小的数据往上浮,就像气泡一样。于是将这种算......
  • 函数qsort的使用与冒泡排序模拟实现qsort
    目录一.qsort函数的使用示例二.使用冒泡排序模拟实现qsort函数二.1.冒泡排序 二.2.模拟实现qsort函数一.qsort函数的使用1.1.qsort函数是用来排序任意数据类型的数组,对其中的元素进行一定规则的排列2.qsort不返回任何值3.qsort的第一个参数是一个void*指针,指向......
  • C语言新手小白详细教程:冒泡排序
    ......
  • 交换排序(冒泡排序和快速排序)
    一、基本思想所谓交换,就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置。交换排序的特点是:将键值较大的记录向序列的尾部移动,键值较小的记录向序列的前部移动。二、冒泡排序1.核心思想两两相邻的元素进行比较2.动图展示3.代码展示voidSwap(int*......