写点什么

输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

作者:InfoQ IT百科
  • 2022 年 4 月 24 日
  • 本文字数:816 字

    阅读完需:约 3 分钟

思路分析: 1. 创建一个数组来装输入数字;2. 找到最大值,和第一个元素交换;3. 找到最小值, 和最后一个元素交换;4. 输出数组


思路分析: 1. 创建一个数组来装输入数字;2. 找到最大值,和第一个元素交换;3. 找到最小值, 和最后一个元素交换;4. 输出数组


public class 第三十五题最大的与第一个元素交换 {    public static void main(String[] args) {        System.out.print("请输入您要输入的数字个数:");        Scanner in = new Scanner(System.in);        int n = in.nextInt();        if(n <=0 ) {            System.out.println("输入有误");        } else {            int[] arr = new int[n];            System.out.println("请输入"+n+"个数字");            for(int i=0; i<n; i++) {                arr[i] = in.nextInt();             }            changeMin(arr);            changeMax(arr);            System.out.println(Arrays.toString(arr));        }        in.close();    }    //最大值与第一个元素交换    public static void changeMax(int[] arr) {        int max = 0;        int index = 0;        for(int i=0; i< arr.length; i++) {            if(max < arr[i]) {                max = arr[i];                index = i;            }        }        int temp = arr[0];        arr[0] = max;        arr[index] = temp;             }    //最后一个元素与最小值交换    public static void changeMin(int[] arr) {        int min = arr[arr.length-1];        int index = 0;        for(int i=0; i< arr.length; i++) {            if(min > arr[i]) {                min = arr[i];                index = i;            }        }        int temp = arr[arr.length -1];        arr[arr.length -1] = min;        arr[index] = temp;     }}
复制代码


用户头像

还未添加个人签名 2021.04.12 加入

还未添加个人简介

评论

发布
暂无评论
输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。_InfoQ IT百科_InfoQ写作社区