产生随机序列进行排序:
选择排序、冒泡排序、插入排序
package com.openlab.lesson.Class;
import java.util.Scanner;
public class Class48 {
/* 随机获取元素 */
public static int[] setNum(int[] arr, int length) {
for (int i = 0; i <= (length - 1); i++) {
arr[i] = (int)(10 * Math.random() * 10);
}
System.out.print("数组元素依次是:");
Ergodic(arr, length);
return arr;
}
/* 遍历数组 */
public static void Ergodic(int[] arr, int length) {
for (int i = 0; i < length; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
}
/* 选择排序 */
public static void SelectSort(int[] arr, int length) {
for (int i = 0; i <= length - 2; i++) {
for (int j = i + 1; j <= length - 1; j++) {
if (arr[i] > arr[j]) {
int t = arr[i];
arr[i] = arr[j];
arr[j] = t;
}
}
}
System.out.print("选择排序:");
Ergodic(arr, length);
}
/* 插入排序 */
public static void InsertionSort(int[] arr, int length) {
int temp, i;
for (i = 1; i < length; i++) {
int j;
temp = arr[i];
for (j = i - 1; j >= 0 && temp < arr[j]; j--) {
arr[j + 1] = arr[j];
}
arr[j + 1] = temp;
}
System.out.print("插入排序:");
Ergodic(arr, length);
}
/* 冒泡排序 */
public static void Bubble(int[] arr, int length) {
for (int i = length; i >= 1; i--) {
for (int j = 0; j <= i - 2; j++) {
if (arr[j] > arr[j + 1]) {
int t = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = t;
}
}
}
System.out.print("冒泡排序:");
Ergodic(arr, length);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入数组元素个数:");
int length = sc.nextInt();
int[] arr = new int[length];
arr = setNum(arr, length);
SelectSort(arr, length); // 选择
InsertionSort(arr, length);// 插入
Bubble(arr, length);// 冒泡
}
}
剩下的排序后续更新!!!!!!!!!!!!