package com.book.lite;
/**
* @author zhangyu
* @date 2021年08月11日 10:51 下午
* 实现整数数组的排序,顺序排序,冒泡排序
*/
public class arrDome {
public static void main(String[] a){
int[] arr = {2,0,9,8,67,-45,-199};
// smallNumber(arr);
// printArr(arr);
smallNumber_1(arr);
printArr(arr);
}
/*
*
* @author zhangyu
* @date 2021/8/11 11:14 下午
* @param arr
* 定义一个可以排序的功能,实现从小到大排序
* 实现原理:嵌套循环
* x=0
* y=1,2,3
* x=1
* y=2,3
*/
public static void smallNumber(int[] arr){
for (int x = 0;x<arr.length;x++){
for(int y = x+1;y<arr.length;y++){
if (arr[x]>arr[y]){
int temp = arr[y];
arr[y] = arr[x];
arr[x] = temp;
}
}
}
}
/*
*
* @author zhangyu
* @date 2021/8/11 11:42 下午
* @param arr
* 使用冒泡排序实现排序
* 实现原理:重点在与内循环的y变量的结尾取值,不能越界异常,也减少比的次数,当最大值诞生后,第二轮没必要与最大值比较
* 第一轮---
* arr[0] arr[1]
* arr[1] arr[2]
* arr[2] arr[3]
*
* 第二轮---
* arr[0] arr[1]
* arr[1] arr[2]
*
* 第三轮---
* arr[0] arr[1]
*/
public static void smallNumber_1(int[] arr){
for (int x = 0;x< arr.length;x++){
for (int y =0 ; y< arr.length-1-x;y++){
if (arr[y] > arr[y+1]){
int temp = arr[y+1];
arr[y+1] = arr[y];
arr[y] = temp;
}
}
}
}
/*
*
* @author zhangyu
* @date 2021/8/11 11:16 下午
* @param arr
* 定义功能实现:输出数组
*
*/
public static void printArr(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.print(arr[x]+",");
}
}
System.out.print("]");
}
}
数组排序之冒泡排序
最新推荐文章于 2021-10-04 16:52:09 发布