(一) 比较类排序
冒泡(Bubble Sort)
/**
* 冒泡算法
* 优化:加标志位对其进行判断是否已经排序好跳出循环
*/
void BubbleSort() {
int[] a={5,7,9,2,3,4,6,1};
int temp=0;
// 对每一个位置的元素进行轮训
for(int i=0;i<a.length-1;i++){
// 元素进行冒泡
for(int j=0;j<a.length-1;j++){
if(a[j]>a[j+1]){
// 交换(swap)
temp=a[j+1];
a[j+1]=a[j];
a[j]=temp;
}
}
}
//打印输出结果
for(int k:a)System.out.println(k);
}
插入(Insertion Sort)
/**
* 插入排序
*/
void insertSort() {
int[] a={5,7,9,2,3,4,6,1};
int temp;
// 对每个数组每个位置上的元素进行插入排序
for(int i=0;i<a.length;i++){
// 从后往前比较,如果待插入元素小于当前下标所在位置元素,则进行交换,直至待插入元素符合排序规则
for(int j=i;j>0&&a[j]<a[j-1];j--){
// 交换(swap)
temp=a[j];
a[j]=a[j-1];
a[j-1]=temp;
}
}
//打印输出结果
for(int k:a)System.out.println(k);
}
网友评论