Java数组中冒泡排序和选择排序的升降序以及指定位置的升降序

一、代码及效果图

1.冒泡排序的升序

案例:利用冒泡排序对以下数组进行升序 {12,36,5,1,98,55,78}

代码如下(示例):

public class Work1 {
    
    
private static void main(String[] args) {
    
    
    int arr[]={
    
    12,36,5,1,98,55,78};
        for (int i = 1; i <=arr.length-1 ; i++) {
    
    
            for (int j = 0; j <=arr.length-1-i ; j++) {
    
    
                if (arr[j]>arr[j+1]){
    
    
                    int t=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=t;
                }
            }
        }
            System.out.println(Arrays.toString(arr));
    }
}

2.冒泡排序的降序

案例:利用冒泡排序对以下数组进行降序 {12,36,5,1,98,55,78}
代码如下(示例):

public class Work1 {
    
    
private static void main(String[] args) {
    
    
     int arr[]={
    
    12,36,5,1,98,55,78};
        for (int i = 1; i <=arr.length-1 ; i++) {
    
    
            for (int j = 0; j <=arr.length-1-i ; j++) {
    
    
                if (arr[j]<arr[j+1]){
    
    
                    int t=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=t;
                }
            }
        }
        System.out.println(Arrays.toString(arr));
    }
}

3.选择排序的升序

案例:利用选择排序对以下数组进行升序 {12,36,5,1,98,55,78}

代码如下(示例):

public class Work1 {
    
    
private static void main(String[] args) {
    
    
       int arr[]={
    
    12,36,5,1,98,55,78};
        for (int i = 0; i <= arr.length-1; i++) {
    
    
            int minindex=i;
            for (int j = i; j <=arr.length-1; j++) {
    
    
                if (arr[j]<arr[minindex]){
    
    
                    minindex=j;
                }
            }
            int t=arr[i];
            arr[i]=arr[minindex];
            arr[minindex]=t;
        }
        System.out.println(Arrays.toString(arr));
    }
}

4.选择排序的降序

案例:利用选择排序对以下数组进行降序 {12,36,5,1,98,55,78}

代码如下(示例):

public class Work1 {
    
    
private static void main(String[] args) {
    
    
    int arr[]={
    
    12,36,5,1,98,55,78};
        for (int i = 0; i <arr.length-1 ; i++) {
    
    
            int maxIndex=i;
            for (int j = i; j <=arr.length-1 ; j++) {
    
    
                if (arr[j]>arr[maxIndex]){
    
    
                    maxIndex=j;
                }
            }
            int t=arr[i];
            arr[i]=arr[maxIndex];
            arr[maxIndex]=t;
        }
        System.out.println(Arrays.toString(arr));
    }
}

5.冒泡排序的指定位置的升降序

代码如下(示例):

package work;

import java.util.Arrays;
import java.util.Scanner;
public class Work02 {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数你指定位置的前后升序和降序(例如输入5:1-5升序,6-10降序):");
        int number=sc.nextInt();
        int arr[]={
    
    7,9,4,3,7,50,40,95,97,35};
        for (int i = 1; i <=arr.length-1 ; i++) {
    
    
            for (int j = 0; j <=arr.length-1-i ; j++) {
    
    
                if (j<=number-2) {
    
    
                    if (arr[j]>arr[j+1]){
    
    
                        int t=arr[j];
                        arr[j]=arr[j+1];
                        arr[j+1]=t;
                    }
                }else if(j>=number){
    
    
                    if (arr[j]<arr[j+1]){
    
    
                        int t=arr[j];
                        arr[j]=arr[j+1];
                        arr[j+1]=t;
                    }
                }
            }
        }
        System.out.println(Arrays.toString(arr));
    }
}

在这里插入图片描述

总结

以上就是冒泡排序和选择排序的升序和降序的全部内容,主要利用循环、数组、以及数据交换等相关知识。

猜你喜欢

转载自blog.csdn.net/StruggleBamboo/article/details/110678202