• 找水王


    题目

    三人行设计了一个灌水论坛。信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一  个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子。坊间风闻该“水王”发帖数目超过了帖子数目的一半。如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?

    思想:

    水网发帖数超过总帖子数量的一半,所以将id两两比较,不相同就删除,直到最后剩下的就是水王

    package Check;
    
    import java.util.Random;
    
    public class Main {
        
        public static void main(String args[])
        {
            int[] ID = new int[100];
            for (int i = 0; i < ID.length; i++) 
            {//循环给数组中的每个元素赋初值
                ID[i] = (int) (Math.random() * 6);//产生随机数并赋值给数组
                }
            for (int i = 0; i < ID.length; i++) 
            {
                System.out.println(ID[i]);
                }
            int[] p = new int[6];
            for(int i = 0; i < ID.length; i++)
            {
                if(ID[i] ==  1) p[0]++;
                if(ID[i] ==  2) p[1]++;
                if(ID[i] ==  3) p[2]++;
                if(ID[i] ==  4) p[3]++;
                if(ID[i] ==  5) p[4]++;
                if(ID[i] ==  6) p[5]++;
            }
            int max = 0;
            for(int i = 0;i<6;i++)
            {
                if(ID[i]>ID[max]) max = i;
            }
            System.out.println("水王为"+max);
            
            int[] k = new int[9];
            k[0] = 1;
            k[1] = 1;
            k[2] = 2;
            k[3] = 1;
            k[4] = 2;
            k[5] = 2;
            k[6] = 2;
            k[7] = 1;
            k[8] = 1;
            int result = k[0];
            int times = 0;
            for(int i = 0; i < 9; i++)
            {
                if(k[i] == result)
                    times++;
                else
                    times--;
                if(times == 0)
                {
                    result = k[i];
                    times = 1;
                }
            }
            System.out.println("水王为"+result);
            }
    }

     

    总结

    整体来说不是太难,要实现功能还是比较简单的,但是真的要做到时间复杂度为O(n)却不容易。

    需要用不一样的方法。

    多创新的去思考,不能让自己的思维局限在一定的位置。

  • 相关阅读:
    物理初中电学套题犯傻题整理
    Ansible之playbook语法
    Ansible之安装-使用aliyun的epel源
    Ansible之批量执行简单指令
    Ansible之配置文件ansible.cfg
    k8s之harbor私有镜像仓库部署
    Ansible之inventory资源清单
    centos7 二进制部署kubernetes(v1.19.0) 高可用集群
    react用ref之坑 (react中findDOMNode)
    iOS开发申请组播广播权限
  • 原文地址:https://www.cnblogs.com/zhoulonghai/p/10955451.html
Copyright © 2020-2023  润新知