• 打发时间


    欢迎斧正

    1、统计 int[] arr={1,4,1,4,2,5,4,5,8,77,88,5,4,9,6,2,4,1,5}中每个数字出现的次数

     @org.junit.Test
        public void test(){
            HashMap<Integer, Integer> hashMap=new HashMap<>();
            int[] arr={1,4,1,4,2,5,4,5,8,77,88,5,4,9,6,2,4,1,5};
            for (int i = 0; i < arr.length; i++) {
                if(hashMap.get(arr[i])==null){
                    hashMap.put(arr[i],1);
                }else {
                    hashMap.put(arr[i],hashMap.get(arr[i])+1);
                }
            }
            Set<Integer> integers = hashMap.keySet();
            for (Integer integer : integers) {
                System.out.println(integer+"出现"+hashMap.get(integer)+"次");
            }
        }

    2、小明和小红去书店买同一本书,小明带的钱差4.98元,小红差1分钱,他俩的钱合起来还不够,问小明带多少钱,小红带多少钱,书的定价是多少

     String[] names = {"小明", "小红", "书价"};
            double[] arr = new double[3];
            //小明的钱
            for (int i = 0; ; i++) {
                //小红的钱
                for (int j = 0; j < i; j++) {
                    //小明的钱加一分等于小红的钱加499分
                    //两个人的钱加起来也不够
                    if (i + 1 == j + 499 && i + j < i + 1 && i + j < j + 499) {
                        arr[0] = i / 100.0;
                        arr[1] = j / 100.0;
                        arr[2] = (i + 1) / 100.0;
                        for (int k = 0; k < arr.length; k++) {
                            System.out.println(names[k] + "是" + arr[k]);
                        }
                        return true;
                    }
    
                }
            }

    3、小张参加一个聚会,聚会中每个人都需要相互握手,他注意到大家总共需要握手45次,那么总共有多少人参加了聚会

    定义一个方法求当人数为num时的握手次数

    public static int shackMan(int num) {
            if (num < 2) {
                return 0;
            } else if (num == 2) {
                return 1;
            } else {
                return (num - 1) + shackMan(num - 1);
            }
        }

    然后调用

            for (int i = 0; ; i++) {
                if (shackMan(i) == 45) {
                    System.out.println("共有" + i + "人参加宴会");
                    break;
                }
            }

    4、一个青蛙向井口怕,井深10m,它每上升3m下降两米,问它需要爬几次能爬出井

        public static int frogClimb(int climbed, int time) {//climbed表示已爬,time表示当前是第几次爬
            if (climbed + 3 >= 10) {
                return time;
            } else {
                return frogClimb(time + 1, time + 1);
            }
        }

    调用出传入0,1即可

     5、使用Linked实现先入先出的队列效果

        @org.junit.Test
        public void test(){
            LinkedList linkedList=new LinkedList();
            char[] chars={'a','c','d','s','s','e','f'};
            System.out.println("存储的顺序为:");
            for (char c:chars){
                System.out.print(c+" ");
                linkedList.addFirst(c);
            }
            System.out.println("
    取出的顺序为:");
            int size = linkedList.size();
            for (int i = 0; i <size ; i++) {
                System.out.print(linkedList.removeLast()+" ");
            }
        }
  • 相关阅读:
    nao机器人使用手册
    突然感觉简单的东西是最美的
    window10教育版激活失败
    linux新分区无法新建文件夹
    看看CSDN的吃相
    游戏mod启动器原理
    显示器选购指南
    维修老电视
    快乐小丑
    这猫会关水龙头,所以你只要给猫猫打开就行——华中师范大学的胖猫
  • 原文地址:https://www.cnblogs.com/kitor/p/11333306.html
Copyright © 2020-2023  润新知