排序算法之冒泡排序(JAVA)
2017-01-15 15:34
190 查看
//冒泡排序算法 平均时间复杂度 O(n*n) 稳定的排序算法
下面的是改进版的冒泡排序算法,使用exchange 标志位进行控制
public class bubbleSort {
public static void bubbleSort(int[] data)
{
int i = 0;
int j = 0;
int tmp = 0;
int len = 0;////局部变量
boolean exchange = false;
if (null == data){
return;
}
len = data.length; //避免重复调用data.length
for (i = 0; i < len-1; i++)
{
exchange = false;
for (j = 0; j < len - 1 - i; j++) {
if (data[j] > data[j+1]) {
tmp = data[j];
data[j] = data[j+1];
data[j+1] = tmp;
exchange = true;
}
}
if (!exchange) {
break;
}
}
}
}
下面的是改进版的冒泡排序算法,使用exchange 标志位进行控制
public class bubbleSort {
public static void bubbleSort(int[] data)
{
int i = 0;
int j = 0;
int tmp = 0;
int len = 0;////局部变量
boolean exchange = false;
if (null == data){
return;
}
len = data.length; //避免重复调用data.length
for (i = 0; i < len-1; i++)
{
exchange = false;
for (j = 0; j < len - 1 - i; j++) {
if (data[j] > data[j+1]) {
tmp = data[j];
data[j] = data[j+1];
data[j+1] = tmp;
exchange = true;
}
}
if (!exchange) {
break;
}
}
}
}
相关文章推荐
- 排序算法之冒泡排序(JAVA)
- 元素排序几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 排序算法--冒泡排序(java)
- 插入排序,选择排序,冒泡排序等常用排序算法(java实现)
- Java实现八个常用的排序算法:插入排序、冒泡排序、选择排序、希尔排序等
- java排序算法学习(一)--冒泡排序
- Java(.NET)经典排序算法之冒泡排序
- Java-排序算法-冒泡排序
- 排序算法之冒泡排序——java/c++/c实现
- 必须知道的八大种排序算法【java实现】(一) 冒泡排序、快速排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 排序算法--交换排序(冒泡排序、快速排序、随机快速排序)java实现
- 排序算法-冒泡排序 java
- 排序算法之冒泡排序(Java)
- Java排序算法1:冒泡排序
- 几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- 基本排序算法——冒泡排序java实现
- 排序算法——交换排序(冒泡排序、快速排序)(java)
- 排序算法Java实现(冒泡排序)
- java 排序算法--冒泡排序