时间:2021-05-19
复制代码 代码如下:
/**
* 原理:
* 进行n次循环,每次循环从后往前对相邻两个元素进行比较,小的往前,大的往后
*
* 时间复杂度:
* 平均情况:O(n^2)
* 最好情况:O(n)
* 最坏情况:O(n^2)
*
* 稳定性:稳定
**/
public class 冒泡排序 {
public int[] bubbleSort(int[] a, int n) {
for (int i = 0; i < n; i++) {
int flag = 0;
for (int j = n - 1; j > i; j--) {// i or i-1 ?
if (a[j] < a[j - 1]) {
int x = a[j];
a[j] = a[j - 1];
a[j - 1] = x;
flag = 1;
}
}
if (flag == 0)
break;
}
return a;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] a = new int[] { 25, 56, 32, 20, 1, 5, 89, 3, 8, 41 };
冒泡排序 sort = new 冒泡排序();
sort.bubbleSort(a, a.length);
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Java数组高级算法与Arrays类常见操作。分享给大家供大家参考,具体如下:冒泡排序冒泡排序原理冒泡排序代码:packagecn.itcast_
一、概述: 本文给出常见的几种排序算法的原理以及Java实现,包括常见的简单排序和排序算法,以及其他常用的算法知识。简单排序:冒泡排序、选择排序、插入排序排序
数据结构很重要,算法+数据结构+文档=程序使用PHP描述冒泡排序算法,对象可以是一个数组复制代码代码如下://冒泡排序(数组排序)functionbubble_
冒泡排序在八大排序中,冒泡排序是最为出名的排序算法之一!冒泡排序的代码还是相当简单的,两层循环,外层是冒泡轮数,里层是依次比较,这个算法的时间复杂度为O(n2)
排序算法常用的有冒泡排序,选择排序和插入排序,下面将用Java语言实现这三种排序方式,并且介绍一种由插入排序拓展出来的希尔排序。1、冒泡排序(BubbleSor