冒泡排序练习
需求:用冒泡算法从小到大重新排序一组数并输出
{111,22, 15,1,56,78,136,987,77,89,56}
代码演示:
/*
用冒泡算法从小到大重新排序一组数并输出
{111,22, 15,1,56,78,136,987,77,89,56}
*/
public class MaoPaoDemo {
public static void main(String[] args) {
int[] arr = {111, 22, 15, 1, 56, 75, 136, 987, 77, 89, 56};
System.out.println("排序前:"+arrToString(arr));
//冒泡排序
for (int x = 0; x < arr.length - 1; x++) {
for (int i = 0; i < arr.length - 1 - x; i++) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
}
System.out.println("排序后:"+arrToString(arr));
}
//字符串拼接
public static String arrToString(int[] arr){
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i = 0;i<arr.length-1;i++){
if (i == arr.length-1){
sb.append(arr[i]);
}else{
sb.append(arr[i]+",");
}
}
sb.append("]");
String s = sb.toString();
return s;
}
}
使用程序实现对随机数的排序
代码演示:
/*
需求:
使用程序实现对随机数的排序
*/
public class RandomDemo {
public static void main(String[] args) {
Random r = new Random();
//定义数组,用于保存随机数
int[] arr = new int[10];
//为数组插入10个随机数
for (int i = 0; i < 9; i++) {
int random = r.nextInt(100);
arr[i] = random;
}
System.out.println("排序前:" + arrayToString(arr));
//冒泡排序
for (int x = 0; x < arr.length - 1; x++) {
for (int i = 0; i < arr.length - 1 - x; i++) {
if (arr[i] > arr[i + 1]) {
int temp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = temp;
}
}
}
System.out.println("排序后:" + arrayToString(arr));
}
//对数组进行字符串的拼接,使展示效果更好
public static String arrayToString(int[] arr) {
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i = 0; i < arr.length; i++) {
if (i == arr.length - 1) {
sb.append(arr[i]);
} else {
sb.append(arr[i] + ",");
}
}
sb.append("]");
String s = sb.toString();
return s;
}
}