选择排序
package day01;
public class SelectionSort {
public static void main(String[] args) {
int[] a = {4, 8, 9, 2, 1, 3, 6, 7, 5};
sort(a);
print(a);
}
static void swap(int[] a, int i, int j) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
static void print(int[] a) {
for(int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
static void sort(int[] a) {
for(int i = 0; i < a.length; i++) {
int minPos = i;
for(int j = i + 1; j < a.length; j++) {
if(a[j] < a[minPos]) {
minPos = j;
}
}
swap(a, i, minPos);
}
}
}
冒泡排序
package day01;
public class BubbleSort {
public static void main(String[] args) {
int[] a = {4, 8, 9, 2, 1, 3, 6, 7, 5};
sort(a);
print(a);
}
static void sort(int[] a) {
for(int i = a.length -1; i > 0; i--) {
for(int j = 0; j < i; j++) {
if(a[j] > a[j + 1]) {
swap(a, j, j + 1);
}
}
}
}
static void swap(int[] a, int i, int j) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
static void print(int[] a) {
for(int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}
插入排序
package day01;
public class InsertionSort {
public static void main(String[] args) {
int[] a = { 4, 8, 9, 2, 1, 3, 6, 7, 5 };
sort(a);
print(a);
}
static void sort(int[] a) {
for(int i = 1; i < a.length; i++) {
for(int j = i; j > 0; j--) {
if(a[j] < a[j - 1]) {
swap(a, j, j - 1);
}
}
}
}
static void swap(int[] a, int i, int j) {
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
static void print(int[] a) {
for(int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}