java数列反转思路提问

img

相关代码:


import java.util.ArrayList;
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        int n=scanner.nextInt();
        int a[]=new int[n];
        String s = scanner.nextLine();
        String [] liebiao = s.split(" ");
        String xy = scanner.nextLine();
        String [] strnums = xy.split(" ");
        for (int i = 0; i < strnums.length-1; i++) {
            for (int j = 0; j < strnums.length-1-i; j++) {        //每次都是找出一个最大值
                    int x = Integer.parseInt(strnums[j]);
                    int y = Integer.parseInt(strnums[j+1]);
后面思路不理解了
想要问问思路和解答

代码参考如下:

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int n = sc.nextInt();
    int a[] = new int[n];
    sc.nextLine();
    String s = sc.nextLine();
    String[] liebiao = s.split(" ");
    String xy = sc.nextLine();
    String [] strnums = xy.split(" ");
    int i = Integer.valueOf(strnums[0]);
    int j = Integer.valueOf(strnums[1]);
    while (i < j) {
        String temp = liebiao[i - 1];
        liebiao[i - 1] = liebiao[j - 1];
        liebiao[j - 1] = temp;
        i++;
        j--;
    }
    System.out.println(Arrays.toString(liebiao));