IT十八掌作业_java基础第三天_数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IT十八掌作业_java基础第三天_数组相关的知识,希望对你有一定的参考价值。

1.定义一个函数,函数功能是动态提取int[]中元素的最大值。

2.定义一个函数,从数组中查询指定的元素首次出现的位置。

3.定义函数,完成冒泡排序,大数下沉。

4.折半查找。

6.定义一个函数,实现矩阵的转置.arr[i][j] == arr[j][i];//前提条件是正方的。

7.遍历三维组数,横向输出三维数组的每一个层。

8.定义一个类:Dog 有名称 color age cry();

9.阐述出来堆区,栈区,何时出现溢出,如何解决。

10.oop

------------------------------------------------------------------------------------

  1. public int Max(int[] array){
            int Max=0;
            for(int i=0;i<array.length;i++){
                if(array[i]>Max){
                    Max=array[i];
                }
            }
            return Max;

  2. public int indexof(int[] array,int target){
            int result=-1;
            for(int i=0;i<array.length;i++){
                if(array[i]==target){
                    result=i;
                }
            }
            return result;

  3. public void swap(int a,int b){
            int temp=a;
            a=b;
            b=temp;
        }
        public void bubbleSort(int[] array){
            //一共比较length-2趟
          for(int i=0;i<length-1;i++){
            for(int j=0;j<length-1-i;j++){
                if(array[j]>array[j+1]){
                    swap(j,j+1);
                    //大数下沉
                }
            }
          }
        }

  4. public int binarySearch(int[] array,int target,int low,int high){

        //    binarySearch的循环实现
        int result=-1;
         
        while(low<high){
             int midIndex=(low+high)/2;

             if(a[midIndex]==target){
                 result=midIndex;
             }else if(a[midIndex]>target){
                 low=midIndex+1;
             }else{
                 high=midIndex-1;
             }
        }
        return result;
    }

    6.public void reverseArray(int[][] array){

        for(int i=0;i<array.length;i++){
            for(int j=i+1;j<array[0].length;j++){
                    swap(array[i][j],array[j][i]);
            }
        }
    }

    7.public void traverseArray(int[][][] array){
        for(int i=0;i<array[0].length;i++){
            for(int j=0;j<array.length;j++){
                for(int k=0;k<array[0][0].length;k++){
                    System.out.print(array[j][i][k]+"\t");
                }
                    System.out.print("\t"+"|");
            }

    8 .class Dog
        {
            private String color;
            private int age;
            private String name;

            public Dog(String color,int age,String name){

                this.name=name;

                this.color=color;

                this.age=age;

            }

            public void setName(String name){

                this.name=name;

            }

             public void setColor(String color){

                this.color=color;

            }

             public void setAge(int age){

                this.age=age;

            }

            public String getName(){

                    return this.name;

            }

             public int getAge(){

                    return this.age;

            }

             public String getColor(){

                    return this.color;

            }

            public void cry(){
                System.out.println("hehe");
            }
        }

    9. 堆区中存放new出来的对象,对象中包括成员变量。

        栈区中存放方法帧,方法帧中有局部变量,包括基本数据类型和引用数据类型,引用数据类型是一         个指针,占4字节。

        堆区存放对象,递归中创建的对象过多会溢出。栈区存放方法帧,使用递归时方法过多而不弹出会引发溢出。

        慎用递归,将递归算法改用循环实现。可以用 Java -Xms<size>来设置堆空间的最大大小

        用Java -Xss<size>来设置栈空间的初始大小

    10.oop=Object Oriented Programming 面向对象的编程。是相对于面向过程编程而言的编程思想

        使开发者从最大的场景出发逐步解决细节问题,提高了代码的重用性使编程者各司其职,各个模块          之间配合更加自如。

       

以上是关于IT十八掌作业_java基础第三天_数组的主要内容,如果未能解决你的问题,请参考以下文章

IT十八掌作业_java基础第十三天_IO

IT十八掌作业_java基础第十三天_I

IT十八掌作业_java基础第十三天_IO

IT十八掌作业_java基础第十二天_集合

IT十八掌作业_java基础第十七天_QQ案例

IT十八掌作业_java基础第26天_Java基础总结/虚拟机基础