zoukankan      html  css  js  c++  java
  • 课题作业之水王

    这个小程序的编写时我们两人小组第三次合作完成的,随着前两次项目的开发,这次作业的完成相对比较顺利,两个人的默契程度提高了不少;

    作业要求:找出在贴吧中真正的水王(发帖及回帖数超过所有帖子的一半),时间复杂度小于等于O(n);

    设计思路:最开始的时候想着用遍历所有数组里的数据统计比较完成,发现时间复杂度较高,之后通过讨论发现,因为水王发帖个数超过,如果通过比较不同消去的方法就可以实现了,我们因此采用了栈的思想实现了消去的过程;

    代码如下:

    import java.util.Stack;
    public class Water {
        public static void main(String[]args)
        {
            String[] a ={"1","1","1","1","2","2","2"};
            String waterwang=select(a);
            System.out.println("水王:");
            System.out.println(waterwang);
        }
        static String select(String[] a)
        {
            Stack<String> s =new Stack<String>();
            s.push("#");
            for(int i=0;i<a.length;i++)
            {
                if(a[i].equals(s.peek())||s.peek().equals("#"))
                {
                    s.push(a[i]);
                }
                else
                {
                    s.pop();
                }
            }
            String rs=s.pop();
            return rs;
        }
    }
    

      

  • 相关阅读:
    CentOS配置教程
    CentOS安装教程(VMware)
    Kali配置教程
    Kali安装教程(VMWare)
    Tomcat安装教程
    JDK安装教程(Windows7 x64)
    WebSphere概要文件的创建与删除
    swftools安装教程
    常用Linux源小记
    Linux软件源书写格式解析及本地yum源制作
  • 原文地址:https://www.cnblogs.com/yuezhihao/p/6729661.html
Copyright © 2011-2022 走看看