大家好,又见面了,我是你们的朋友全栈君。
Java 冒泡排序
- 冒泡排序是最为出名的排序算法之一,总共有八大排序!
- 直接插入排序
- 希尔排序
- 简单选择排序
- 堆排序
- 冒泡排序
- 快速排序
- 归并排序
- 基数排序
- 冒泡排序还是比较简单的,两次循环吗,外层冒泡轮数,里层依次比较。
上代码
package Arrays;
import java.util.Arrays;
/** * 冒泡排序 * 1.比较数组中,两个相邻的元素,如果第一个数比第二个大,我们就让它们交换位置 * 2.每一次比较,都会产生一个最大的,或者最小的数字 * 3.下一轮则可以少一次排序 * 4.依次循环,直到结束! */
public class BubbleSort {
public static void main(String[] args) {
int a[]={
1,5,3,8,56,5252};
int b[]={
1,5,3,8,56,5252};
int[] ascSort=ascSort(b);
int[] desSort=desSort(a);
System.out.println(Arrays.toString(desSort));
System.out.println(Arrays.toString(ascSort));
}
public static int[] desSort(int[] array){
//临时变量,用来交换位置
int temp=0;
//外层循环 ,判断我们这个数组要走多少次
for (int i = 0; i < array.length-1; i++) {
//内层循环,比较两个数如果第一个数比第二个大 则交换位置
for (int j=0;j<array.length-1-i;j++){
if (array[j+1]>array[j]){
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
return array;
}
public static int[] ascSort(int[] array){
//临时变量,用来交换位置
int temp=0;
//外层循环 ,判断我们这个数组要走多少次
for (int i = 0; i < array.length-1; i++) {
//内层循环,比较两个数如果第一个数比第二个大 则交换位置
for (int j=0;j<array.length-1-i;j++){
if (array[j+1]<array[j]){
temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
return array;
}
}
b
如果想看其他排序可以参考这篇
https://www.cnblogs.com/morethink/p/8419151.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/156421.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...