数组基础练习

public class testDemo {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int data[][] = new int[][]{{1,2,3,4},{5,6,7,8},{9,3,6,1},{8,2,2,8}};
        for(int row=0;row<4;row++){
            for(int col=0;col<4;col++){
                System.out.print(data[row][col]+",");
            }
            System.out.println();
        }

        System.out.println();
        transpose(data);
        for(int i=0;i<4;i++){
            for(int j=0;j<4;j++){
                System.out.print(data[i][j]+",");
            }
            System.out.println();
        }
    }

    //二维数组行列转置
    public static int[][] transpose(int[][] temp){
        int exchange=0;
            for(int x=0;x<temp.length;x++){
                for(int y=x;y<temp[x].length;y++){
                    exchange=temp[x][y];
                    temp[x][y]=temp[y][x];
                    temp[y][x]=exchange;
                }
            }
        return temp;
    }

    //查找数组中的数字
    public static boolean search(int[] temp,int num){
        for(int i=0;i<temp.length;i++){
            if(temp[i]==num){
                return true;
            }
        }
        return false;
    }

    //排序
    public static int[] sort(int[] temp){
        int x=0;
        for(int n=0;n<temp.length;n++){
            for(int i=0;i<temp.length-1;i++){
                if(temp[i]>temp[i+1]){
                    x=temp[i];
                    temp[i]=temp[i+1];
                    temp[i+1]=x;
                }
            }
        }

        return temp;
    }

    //一维数组反转
    public static int[] convert(int[] temp){
        int exchange=0;
        if(temp.length%2==0){
            for(int i=0;i<temp.length/2;i++){
                exchange=temp[i];
                temp[i]=temp[temp.length-i-1];
                temp[temp.length-i-1]=exchange;
            }
        }else{
            for(int j=0;j<Math.round(temp.length/2);j++){
                exchange=temp[j];
                temp[j]=temp[temp.length-j-1];
                temp[temp.length-j-1]=exchange;
            }
        }

        return temp;
    }

}
时间: 2024-10-17 02:12:39

数组基础练习的相关文章

php数组基础

一.php数组的声明 1.数组中可以有任意类型的数据 2.长度可以变长 3.数组的分类: a.索引数组:数组是以从0开始的帧数作为索引值 声明:$arr = array(1,2);$arr[0] = 1; 计算数组长度:count($arr); b.关联数组:数组是以字符串作为索引值 声明:$arr["name"] = "gh"; $arr = array("name"=>"zs","age"=>

Java 数组基础,java.util.Arrays

定义数组 方式1(推荐,更能表明数组类型) 方式2(同C语言) 方式3?定义时直接初始化 数组运用基础 数组长度 equals() 数组元素不为基本数据类型时 二维数组 二维数组基础 变长的二维数组 java.utils.Arrays 类 参考文献: ? 数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int[10]; 数组名,也即引用a,指向数组元素的首地

Java 数组基础

数组(Array):相同类型数据的集合. 定义数组 方式1(推荐,更能表明数组类型) type[] 变量名 = new type[数组中元素的个数]; 比如: int[] a = new int[10]; 数组名,也即引用a,指向数组元素的首地址. 方式2(同C语言) type变量名[] = new type[数组中元素的个数]; 如: int a[] = new int[10]; 方式3 定义时直接初始化 type[] 变量名 = new type[]{逗号分隔的初始化值}; 其中红色部分可省

Json数组基础知识

1.对象是一个无序的"'名称/值'对"集合. (1)一个对象以"{"(左括号)开始,"}"(右括号)结束. (2)每个"名称"后跟一个":"(冒号): (3)"'名称/值' 对"之间使用","(逗号)分隔.(如图所示,图中表示数据的方式是类似非确定性自动机的形式,没学过编译原理的人,可能理解起来困难点,实际上也是正则表达式的形式.下同) 例子:表示人的一个对象: 1

shell脚本进阶之数组基础

SHELL脚本--shell数组基础 ? 数组和变量的区别:变量在内存中占用的空间是离散的,数组在内粗中开辟一段连续的大内存空间,随后数组中的每个元素都放入数组内存中.数组元素使用index标识. ? bash里有两种数组普通数组和关联数组.普通数组只能使用整数类形数值作为数组索引,关联数组可以使用字符串作为索引.关联数组的另外三种称呼:字典(dict),hash结构和映射(map),是一种key和value一一对应的关系. 一.普通数组 1.1定义普通数组 方法一: [[email prote

数组基础知识

/* ============================================================================ Name : TestArray.c Author : lf Version : Copyright : Your copyright notice Description : 数组的基本使用 =========================================================================

java数组基础知识

数组的定义:int[] array=new array[n];int array[]={, , , ,};定义了数组,JVM就会给其一个空间,数组是应用类型的数据类型,其存储方式是随机存储. 数组的遍历,一般是通过循环来遍历其元素的,二维数组可以是通过霜或双重循环来遍历.数组的下标是从0开始的. 数组的替换,数组提供了一个方法,两种重载的形式,此方法为fill(),可以通过此方法来填充数组或者替换数组指定位置的元素. public class Array_Fill { public static

PHP数组基础知识总结以及排序

最近刚刚实习,经常用到php的数组,所以总结一下,以后不用随时去乱搜. 一:基础知识 PHP支持数字索引数组和关联数组,关联数组允许使用更有意义的数据(如字符串)作为索引.以及允许间隔性地使用数组和字符串作为数组的索引. 1.数组定义: $arr = [1,2,3,4];//数字索引数组 php5.4以上提供的新方式 $arr = ['a'=>1,'b'=>2];//关联索引数组 $arr = array(1,2,3,4); $arr = array('a'=>1,'b'=>2);

JavaScript数组基础知识

前言: 其实作为一个Java程序员,对JS程序一直都有点"不屑一顾"的感觉,很多人肯定和我一样,有其他语言基础,JS语法根本就懒得看,直接写程序,一般工作也都够用了.但是最近在做一个偏Web Excel项目,需要大量的JS编程和优化,抽空又"恶补"了下JS基础.发现原来对JS的理解偏差还是很大的.不过JS这个东西深入起来其实比Java要容易的. 基础: JS数组和Java数组很类似,值都是有序的,索引从0开始.但是JS数组最大可能的索引为2的32次最大能容纳4294

JAVA总裁--Java数组基础知识

1.数组的定义: 数组是由一组类型相同的数据元素构成的有序集合,每个数据元素称为一个数组元素(简称为元素),每个元素受n(n≥1)个线性关系的约束,每个元素在n个线性关系中的序号i1.i2.-.in称为该元素的下标,并称该数组为 n 维数组. 2.数组的特点: 元素本身可以具有某种结构,属于同一数据类型: 数组是一个具有固定格式和数量的数据集合. 3.数组的语法: package com.eduask.test; import java.util.Scanner; public class Ar