1. 程式人生 > >Java氣泡排序(Bubble Sort),Array和List排序

Java氣泡排序(Bubble Sort),Array和List排序

Java氣泡排序(Bubble Sort)

原理:比較兩個相鄰的元素,將值大的元素交換至右端。

在這裡插入圖片描述


public class BubbleSortArray {

	public static void main(String[] args) {
		//
		int[] array = { 6, 5, 4, 3, 2, 1 };
		print(array);
		for (int i = 0; i < array.length - 1; i++) {// 外層迴圈控制排序趟數
			for (int j = 0; j < array.length - 1 - i; j++) {// 內層迴圈控制每一趟排序多少次
				if (array[j] > array[j + 1]) {
					int temp = array[j];
					array[j] = array[j + 1];
					array[j + 1] = temp;
				}
			}
		}
		print(array);
	}

	//
	private static void print(int[] array) {
		System.out.println("");
		System.out.println("當前陣列:");
		for (int i : array) {
			System.out.print(i + " ");
		}
	}

}

在這裡插入圖片描述

import java.util.ArrayList;
import java.util.List;

public class BubbleSortList {
	

	public static void main(String[] args) {
		List<Integer> list = new ArrayList();
		list.add(6);
		list.add(5);
		list.add(4);
		list.add(3);
		list.add(2);
		list.add(1);
		//
		print(list);
		for(int i=0;i<list.size()-1;i++) {
			for(int j=0;j<list.size()-1-i;j++) {
				if (list.get(j)>list.get(j+1)) {
					int temp = list.get(j);
					list.set(j,list.get(j+1));
					list.set(j+1, temp);
				}
			}
		}
		print(list);
	}
	private static void print(List list) {
		System.out.println(list.toString());
	}

}