zoukankan      html  css  js  c++  java
  • 课堂练习--“找水王续"

    设计思路:

    ①跟上次思路一样,将问题简化成从一个数组中找出出现次数最多的3个数。

    ②将“两两相消"的思路模式,变成“三一相消”

    ③初始化time为零,kingid为零,然后按顺序赋值,遇到跟kingid1相同的time1+1,其余两个同样;遇到跟三个都不同的所有time-1。

    代码:

    import java.util.*;
    
    public class Findthreenum {
    
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.out.println("请输入数组的长度:");
            int length = input.nextInt();
            int[] id = new int[length];
            System.out.println("请输入数组:");
            for(int i=0;i<length;i++)
            {
                id[i] = input.nextInt();
            }
            input.close();
            
            int kingid1=0;
            int kingid2=0;
            int kingid3=0;
            int time1=0;
            int time2=0;
            int time3=0;
            
            for(int i=0;i<length;i++)
            {
                if(time1==0 && id[i]!=kingid2 && id[i]!=kingid3)
                {
                    kingid1=id[i];
                    time1++;
                }
                else if(time2==0 && id[i]!=kingid1 && id[i]!=kingid3)
                {
                    kingid2=id[i];
                    time2++;
                }
                else if(time3==0 && id[i]!=kingid1 && id[i]!=kingid2)
                {
                    kingid3=id[i];
                    time3++;
                }
                else if(id[i]!=kingid1 && id[i]!=kingid2 && id[i]!=kingid3)
                {
                    time1--;
                    time2--;
                    time3--;
                }
                else if(id[i]==kingid1)
                {
                    time1++;
                }
                else if(id[i]==kingid2)
                {
                    time2++;
                }
                else if(id[i]==kingid3)
                {
                    time3++;
                }
            }
            
            System.out.println("水王分别是:" + kingid1 + "," + kingid2 + "," + kingid3);
    
        }
    
    }

    结果截图:

    总结:

    本次的课堂练习相比上次而言感觉差不太多,就是出现次数多的数由一个变为三个,所以依旧采取上次的思路来做就不是很难了。

  • 相关阅读:
    5、文件处理
    6、Python模块
    4、字典使用
    3、列表 list
    1、Python基础
    2、循环判断
    配置LOG4J(log4j-1.2.17)
    File /WEB-INF/web.xml not found...
    关于TOMCAT的 ROOT/WEB-INF/web.xml的配置
    tomcat 配置系列3
  • 原文地址:https://www.cnblogs.com/lk0823/p/5533184.html
Copyright © 2011-2022 走看看