自学JAVA Day1

文章目录


前言

JAVA自学计划Day2


提示:以下是本篇文章正文内容,下面案例可供参考

  1. 判断 一个数组 是否 被排序,如果没有排序,则使用 快速排序,完成数组的排序 如果已经排序,则通过 二分法查找指定的元素
    在数组中出现的索引位置
    public static void main(String[] args) {
        int[] array = {1, 2, 3, 0, 0, 9};
        int ele = 0;
        if (!ArrayUtils.isSorted(array)) {
            Arrays.sort(array);
        }
        int i = Arrays.binarySearch(array, ele);

        System.out.println(i);
    }
  1. 有15个人围成一圈,从1开始循环式报数,如果报的数是 7的倍数,则从队伍中移除,计算 队伍中最后剩余的人 是 谁?
    public static void main(String[] args) {
        int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15};
        int num=0;
        //            报数计数器
        while (array.length > 1) {
            for (int i = 0; i < array.length; i++) {
                num++;
                if (num % 7 == 0) {
                    array = ArrayUtils.remove(array, i);
                    i--;
                }
            }
        }
        System.out.println(array[0]);
    }
  1. 完成对指定数组的内容 去重
    public static void main(String[] args) {
        int[] array = {1, 3, 4, 3, 0, 0, 0, 5, 6};
//            创建一个新数组跟原数组等长
        int[] newArray = new int[array.length];
//        声名一个有效数字
        int index = 0;
//        记录元素0出现的次数
        int zeroNum = 0;
//        遍历原数组
        for (int i = 0; i < array.length; i++) {
            int ele = array[i];
            if (ele == 0){
                zeroNum++;
            }
//          逐个判断新数组是否有该元素
            if (!ArrayUtils.contains(newArray, ele) || ele == 0 && zeroNum == 1) {
                newArray[index++] = ele;
            }
        }
//        拷贝新数组中的有效数字存在新数组中
        newArray = Arrays.copyOf(newArray, index);
        System.out.println(ArrayUtils.toString(newArray));
    }
  1. 【二维数组《杨辉三角》练习题】 使用程序, 输出 前 10行对应的数据
    1
    1 1
    1 2 1
    1 3 3 1
    1 4 6 4 1
    1 5 10 10 5 1
 public static void main(String[] args) {
//        创建二维数组 打印10行
        int[][] yangHui = new int[10][];
//      定义每一行
        for (int i = 0; i < yangHui.length; i++) {
//          每一列的数据
            int[] cols = new int[i + 1];
            for (int j = 0; j < cols.length; j++) {
//                首尾的数据为1
                if (j == 0 || j == i) cols[j] = 1;
                else {
                    cols[j] = yangHui[i - 1][j - 1] + yangHui[i - 1][j];
                }
            }
//            每一层的列添加到行
            yangHui[i]=cols;
        }
//        打印数组
        for (int i = 0; i < yangHui.length; i++) {
            for (int j = 0; j < yangHui[i].length; j++) {
                System.out.print(yangHui[i][j]+"\t");
            }
            System.out.println();
        }
    }

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

上一篇:又来了!“领英”四分之一用户信息落入黑客手中


下一篇:整理的Unity 面试题(有些没答案都是师兄在脑海里记录下来的)(二)