Exercices liés aux tableaux en Java

1. Trouvez la moyenne du tableau

Implémentez une méthode avg, prenez un tableau comme paramètre et recherchez la moyenne de tous les éléments du tableau (notez le type de valeur de retour de la méthode).


/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 avg, 以数组为参数, 求数组中所有元素的平均值(注意方法的返回值类型).
 * User: starry
 * Date: 2020 -12 -11
 * Time: 15:53
 */
public class Work1 {
    
    
    public static int avg(int[] arr){
    
    
        int sum=0;
//        for(int i=0;i<arr.length;i++){
    
    
//            sum=sum+arr[i];
//        }
        for(int a:arr){
    
    
            sum+=a;
        }
        return sum/arr.length;
    }

    public static void main(String[] args) {
    
    
        int[] arr=new int[]{
    
    1,2,3,4,5};
        int avg=avg(arr);
        System.out.println(avg);
    }
}

2. La somme de tous les éléments du tableau

Implémentez une méthode sum qui prend un tableau comme paramètre pour trouver la somme de tous les éléments du tableau.

/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 sum, 以数组为参数, 求数组所有元素之和.
 * User: starry
 * Date: 2020 -12 -11
 * Time: 16:14
 */
public class Work2 {
    
    
    public static int sum(int[] arr){
    
    
        int sum=0;
        for(int a:arr){
    
    
            sum+=a;
        }
        return sum;
    }
    public static void main(String[] args){
    
    
        int[] arr={
    
    1,2,3,4,5};
        System.out.println(sum(arr));
    }
}

3. Modifiez la valeur de l'élément de tableau d'origine

Implémentez une méthode transform, prenez un tableau comme paramètre, faites une boucle pour multiplier chaque élément du tableau par 2 et définissez-le sur l'élément de tableau correspondant. Par exemple, le tableau d'origine est {1, 2, 3}, et après modification, c'est {2, 4, 6}

/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 transform, 以数组为参数, 循环将数组中的每个元素 乘以 2 , 并设置到对应的数组元素上.
 * 例如 原数组为 {1, 2, 3}, 修改之后为 {2, 4, 6}
 * User: starry
 * Date: 2020 -12 -11
 * Time: 16:21
 */
public class Work3 {
    
    
    public static void transform(int[] arr){
    
    
        for(int i=0;i< arr.length;i++){
    
    
            arr[i]*=2;
        }
    }
    public static void main(String[] args){
    
    
        int[] arr=new int[]{
    
    1,2,3,4,5};
        transform(arr);
        for(int a:arr){
    
    
            System.out.println(a);
        }
    }
}

4. Imprimez la matrice

Implémentez une méthode printArray qui prend un tableau comme paramètre, effectue une boucle sur chaque élément du tableau et imprime la valeur de chaque élément.

/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 printArray, 以数组为参数, 循环访问数组中的每个元素, 打印每个元素的值.
 * User: starry
 * Date: 2020 -12 -11
 * Time: 16:35
 */
public class Work4 {
    
    
    public static void printArray(int[] arr){
    
    
        for(int a:arr){
    
    
            System.out.println(a);
        }
    }
    public static void main(String[] args){
    
    
        int[] arr={
    
    1,2,3,4,5};
        printArray(arr);
    }
}

5. Créez un tableau et attribuez des valeurs initiales

Créez un tableau de type int, le nombre d'éléments est de 100 et définissez chaque élément sur 1-100 à tour de rôle

/**
 * Created with IntelliJ IDEA.
 * Description:创建一个 int 类型的数组, 元素个数为 100, 并把每个元素依次设置为 1 - 100
 * User: starry
 * Date: 2020 -12 -11
 * Time: 16:44
 */
public class Work5 {
    
    
    public static void main(String[] args) {
    
    
        int[] arr=new int[100];
        for(int i=0;i<arr.length;i++){
    
    
            arr[i]=i+1;
        }
        for(int i:arr){
    
    
            System.out.print(i+" ");
        }
    }
}

6, tri à bulles

Étant donné un tableau d'entiers, implémentez le tri à bulles (tri croissant)

import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:给定一个整型数组, 实现冒泡排序(升序排序)
 * User: starry
 * Date: 2020 -12 -27
 * Time: 10:10
 */
public class Work6 {
    
    
    public static void bubbleSort(int[] arr){
    
    
        int i,j;
        for(i=0;i<arr.length-1;i++){
    
    
            int time=0;
            for(j=0;j<arr.length-i-1;j++){
    
    
                if(arr[j]>arr[j+1]){
    
    
                    int tmp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=tmp;
                    time=1;
                }
            }
            if(time==0){
    
    
                return;
            }
        }
    }
    public static void main(String[] args) {
    
    
        int[] arr=new int[]{
    
    53,12,48,86,74,55,32,57,49,99};
        System.out.println("初始为:"+Arrays.toString(arr));
        bubbleSort(arr);
        System.out.println("排序后为:"+Arrays.toString(arr));
    }
}

7. Le tableau est-il en ordre?

Étant donné un tableau d'entiers, déterminez si le tableau est ordonné (croissant)

import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:给定一个整型数组, 判定数组是否有序(递增)
 * User: starry
 * Date: 2020 -12 -27
 * Time: 10:40
 */
public class Work7 {
    
    
    public static boolean judgeSort(int[] arr){
    
    
        for(int i=0;i<arr.length-1;i++){
    
    
            if(arr[i]>=arr[i+1]){
    
    
                return false;
            }
        }
        return true;
    }
    public static void main(String[] args) {
    
    
        int[] arr1=new int[]{
    
    53,12,48,86,74,55,32,57,49,99};
        System.out.println("数组1为:"+ Arrays.toString(arr1));
        System.out.println("数组1是否有序:"+judgeSort(arr1));

        int[] arr2=new int[]{
    
    1,2,3,4,5,6,7,8,9,10};
        System.out.println("数组2为:"+ Arrays.toString(arr2));
        System.out.println("数组2是否有序:"+judgeSort(arr2));
    }
}

8. Recherche binaire

Étant donné un tableau d'entiers ordonné, implémentez la recherche binaire

import java.util.Arrays;
import java.util.Scanner;

/**
 * Created with IntelliJ IDEA.
 * Description:给定一个有序整型数组, 实现二分查找
 * User: starry
 * Date: 2020 -12 -27
 * Time: 10:49
 */
public class Work8 {
    
    
    public static int binarySearch(int[] arr,int a){
    
    
        int len=arr.length;
        int left=0;
        int right=len-1;
        int mid;
        for(int i=0;i<len;i++){
    
    
            mid=(left+right)/2;
            if(arr[mid]>a){
    
    
                right=mid-1;
            }else if(arr[mid]<a){
    
    
                left=mid+1;
            }else{
    
    
                return mid;
            }
        }
        return -1;
    }
    public static void main(String[] args) {
    
    
        int[] arr=new int[]{
    
    11,22,33,44,55,66,77,88,99,100};
        System.out.println("数组为"+ Arrays.toString(arr));
        System.out.println("请输入要查找的数字");
        Scanner cin=new Scanner(System.in);
        int a=cin.nextInt();
        int result=binarySearch(arr,a);
        if(result==-1){
    
    
            System.out.println("该数字在数组中未出现");
        }else{
    
    
            System.out.println("该数字所在数组下标为:"+result);
        }
    }
}

9. Copie de la baie

Implémentez une méthode copyOf pour copier un tableau d'entiers pour obtenir un nouveau tableau.

import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 copyOf, 对一个整型数组进行拷贝, 得到一个新的数组.
 * User: starry
 * Date: 2020 -12 -27
 * Time: 11:32
 */
public class Work9 {
    
    
    public static int[] copyOf(int[] arr){
    
    
        int[] brr=new int[arr.length];
        for(int i=0;i<brr.length;i++){
    
    
            brr[i]=arr[i];
        }
        return brr;
    }
    public static void main(String[] args) {
    
    
        int[] arr=new int[]{
    
    11,22,33,44,55,66,77,88,99,100};
        System.out.println("数组1为:"+ Arrays.toString(arr));
        System.out.println("经拷贝后,数组2为:"+Arrays.toString(copyOf(arr)));
    }
}

10. Tableau en chaîne

Implémentez une méthode toString pour convertir un tableau d'entiers en chaîne. Par exemple, le tableau {1, 2, 3}, la chaîne renvoyée est "[1, 2, 3]", faites attention à la position et au nombre de virgules.

import java.util.Arrays;

/**
 * Created with IntelliJ IDEA.
 * Description:实现一个方法 toString, 把一个整型数组转换成字符串. 例如数组 {1, 2, 3} ,
 * 返回的字符串为 "[1, 2, 3]", 注意 逗号 的位置和数量.
 * User: starry
 * Date: 2020 -12 -27
 * Time: 11:44
 */
public class Work10 {
    
    
    public static String ToString(int[] array) {
    
    
        if(array == null) {
    
    
            return null;
        }
        String ret = "[";
        for (int i = 0; i < array.length; i++) {
    
    
            ret = ret + array[i];
            if(i != array.length-1) {
    
    
                ret += ", ";
            }
        }
        ret += "]";
        return ret;
    }
    public static void main(String[] args) {
    
    
        int[] array = {
    
    1,2,3};
        System.out.println(Arrays.toString(array));
    }
}

Je suppose que tu aimes

Origine blog.csdn.net/starry1441/article/details/113756300
conseillé
Classement