• 数组的反转和二维数组


    数组的反转

    ​ 数组的反转:数组中的元素颠倒顺序,例如:原始数组为1,2,3,4,5数组封装之后为5,4,3,2,1

    ​ 思路:本质是考察交换两个变量的值

    • 实现反转,就需要将数组最远端的元素和最近端位置互换
    • 定义两个变量,保存数组的最小索引和数组的最大索引
    • 让两个索引上的元素交换位置
    • 最小的索引变量++,最大索引变量--,再次交换位置
    • 最小索引超过了最大索引,数组反转结束
        //准备一个需要反转的数组 
        int[] arr = {1,2,3,4,5,6}
        //定义两个索引变量,一个索引变量指向最小索引,一个索引变量指向最大索引
        int min = 0;
        int max = arr.length-1;
        //遍历数组,让两个索引变量产生变化
        min++;
        max--;
        条件min<max;
        //交换最小索引元素和最大索引元素;需要定义第三方元素
        int temp = 0;
        temp = arr[min];//把最小的索引元素赋值给第三方变量
        arr[min] = arr[max];//把最大的索引元素赋值给最小的索引元素
        arr[max] = temp;//把第三方变量的赋值给最大索引的元素
        
    
    
    public static void main(String[] args){
        int[] arr = {1,2,3,4,5,6};
         //遍历数组,让两个索引变量产生变化
        //遍历数组 for  
        for(int min = 0,int max = arr.length-1;min < max;min++,max--){
            int temp = 0;
        	temp = arr[min];//把最小的索引元素赋值给第三方变量
       		arr[min] = arr[max];//把最大的索引元素赋值给最小的索引元素
        	arr[max] = temp;//把第三方变量的赋值给最大索引的元素
        }
        //查看反转之后的数组内容  遍历数组
        for(int i = 0;i <= arr.length-1;i++){
            System.out.println(arr[i]);
        }
        
        //第二种思路
        int[] arr = {1,2,3,4,5,6};
        //遍历数组
        for(int i = 0;i < arr.length/2;i++){
            //交换变量
            int temp = 0;
            temp = arr[i];
            arr[i] = arr[arr.length-1-i];
            arr[arr.length-1-i] = temp;  
        }
        
    }
    

    二维数组

    ​ 定义方式:和一维数组是一样的,也有三种方式

    方式一:

    数组的数据类型[][] 数组名称 = new 数组的数组类型[长度1][长度2];
    长度1 不可省略,代表 该二维数组里面存储的元素个数
    长度2 可以省略,代表该二维数组里面的元素(数组里面的元素个数),而且它里面的数组元素个数一样
    如: int[][] arr = new int[3][2];
    长度3------》该arr数组里面有3 个元素(数组)
    长度2----=-》该arr数组里面的每个数字元素都有两个元素
    相当于-----》int[][] arr = {{0,0},{0,0},{0,0}};
    
    

    方式二:

    数组的数据类型[][] 数组名称 = new 数组的数据类型[][]{{元素1,元素2....},{元素1,元素2,元素3....},{元素1,元素2,元素3....}....}
    

    方式三:

    数组的数据类型[][] 数组名称 = {{元素1,元素2...},{元素1,元素2,...},{元素1,元素2,元素3...}.....}
    

    二维数组元素访问方式

    ​借助于【索引】

    格式:

    数组名称[索引]---->访问的是二维数组的元素
        //访问二维当中的一维数组里面的元素
        数组名称[一维数组的索引值][一维数组里面的元素索引值]
        如:int[][] arr = {{10,20,50},{30,40,80},{15,100}};
        //访问arr 数组当中的10元素
       	arr[0][0]=10;
    	// 访问arr数组的80元素
        arr[1][2] = 80
    
    
  • 相关阅读:
    NOIP模拟测试7
    BigInt类
    bzoj 2733 [HNOI2012]永无乡 并查集+平衡树
    bzoj 2752 [HAOI2012]高速公路(road) 线段树
    bzoj 1584 Cleaning Up 打扫卫生 dp
    201709 半集训
    [SHOI2014]概率充电器 dp
    NOIP2016 天天爱跑步
    [HNOI2011] 数学作业
    [Poi2012]Festival
  • 原文地址:https://www.cnblogs.com/luayan/p/13971818.html
Copyright © 2020-2023  润新知