陣列氣泡排序
public class SecondDemo {
//陣列氣泡排序,從小到大
public static void bubuuMin(int[] arr) {
for(int x=0;x<arr.length-1;x++) {
//-x的目的是為了每次比較的元素減少
//-1的目的是為了防止角標越界
for(int y=0;y<arr.length-x-1;y++) {
if(arr[y]>arr[y+1]) {
int temp = arr[y];
arr[y] = arr[y+1];
arr[y+1] = temp;
}
}
}
}
//陣列氣泡排序,從大到小
public static void bubbMax(int[] arr) {
//外迴圈,表示迴圈次數
for(int x=0;x<arr.length-1;x++) {
//-x表示每一次比較的元素減少
//-1是為了防止角標越界
for(int y=0;y<arr.length-x-1;y++) {
if(arr[y]<arr[y+1]) {
int temp = arr[y];
arr[y] = arr[y+1];
arr[y+1] = temp;
}
}
}
}
//輸出陣列中的元素
public static void printout(int[] arr) {
System.out.print("[");
for(int x=0;x<arr.length;x++) {
if(x != arr.length-1) {
System.out.print(arr[x]+",");
}else {
System.out.println(arr[x]+"]");
}
}
}
public static void main(String[] args) {
int[] arr = {2,45,23,67,43,99,1};
//進行氣泡排序,從小到大
bubuuMin(arr);
//輸出陣列元素
printout(arr);
//進行氣泡排序,從大到小
bubbMax(arr);
//輸出陣列元素
printout(arr);
}
}