• 课堂练习--找水王


    思路:因为水王的发帖数目超过了总帖子数的一半,就是水王的帖子比其他所有人的帖子加起来还要多。比较相邻两个发帖ID,若不相同,则把两个帖子全部删除;若相同,则删除一个,之后再继续比较。到最后剩下的就是水王的id。

    代码:

    package test;
    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;
    
    /**
     * 找水王
     * @author t'w'j
     *
     */
    
    
    public class ShuiWang {
        public static void main(String[] args) throws IOException {
            find();
        }
    
        public static void find() throws IOException {
            BufferedReader br = new BufferedReader(new FileReader("sw.txt"));
            String s,s1 = null,s2 = null,shuiwang = null;
            int i=1;
            while((s = br.readLine()) != null) {
                s1 = s;
                if(s2 == null) {
                    s2 = br.readLine();
                }
                System.out.println("------------------------------------------");
                System.out.println("第" + i++ + "次比较");
                System.out.println("s1:" + s1);
                System.out.println("s2:" + s2);
                if(s2 != null) { 
                    if(s1.compareTo(s2) != 0)   //两个值不同,s2重置,因为s1每次都重置,所以不用管s1
                        s2 = null;
                    else                        //两个值相同,s2不重置,将相同的值当作水王记录下来
                        shuiwang = s2;
                }else {
                    shuiwang = s1;
                }
                System.out.println("记录id:" + shuiwang);
            }
            if(shuiwang == null)
                shuiwang = s2;
            System.out.println("
    水王id为:" + shuiwang);
            br.close();
        }
    
    }

    运行结果:

     个人总结:看到题目后,最开始想的是统计个id的数量,存放到数组里,然后找到数目最大的哪个id,就是水王。老师说那样就太麻烦了。之后就有同学分享了这种方法,确实这种方法很妙,时间复杂度也降低了。总之自己要多多学习,拓展思路。

  • 相关阅读:
    10-10-12分页机制(xp)
    段间跳转之任务门
    段间跳转之TSS段
    mysql索引
    cat /proc/meminfo
    This system is not registered to Red Hat Subscription Management报错
    CentOS 6.5安装zabbix
    KVM(系统虚拟化模块)安装
    Linux时区更改
    学习ruby/rails, rvm是必不可少的工具之一
  • 原文地址:https://www.cnblogs.com/tianwenjing123-456/p/12982813.html
Copyright © 2020-2023  润新知