| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 523 人关注过本帖
标题:求一个二进制串中连续的1或连续的0出现的最大次数
取消只看楼主 加入收藏
我是嘉欣
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-11-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
求一个二进制串中连续的1或连续的0出现的最大次数
求一个二进制串中连续的1或连续的0出现的最大次数。
例如:s = “11100001111100011”  则返回:5
又例如:s=”01111000”  则返回:4
搜索更多相关主题的帖子: 二进制 
2012-12-17 23:41
我是嘉欣
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-11-29
收藏
得分:0 
我自己也做出来了,是可以运行的,但也希望大家能把它改得更好......
import
import
public class exe4 {
    public static void main(String[] args) {
        String str=null;
        int j=0,i=0,count;   
        try{
            BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
            System.out.println("请输入一串二进制数:");
            str=in.readLine();
        }catch(Exception e){}   
        int a[]=new int[str.length()];                      //定义数组array,存放每个连续数字的出现次数(数组的长度不能长于str.length())
        while(i<str.length()){                                   //当i小于二进制串的长度,就进入循环
            count=1;         //首先count应该为1
            while(str.charAt(i)==str.charAt(i+1)){                //当两个数字相同时count加1
                count++;                                          //
                i=i+1;
                if(i==str.length()-1)                              
                    break;
            }
            a[j]=count;                  //数组array存放每个连续数字的出现次数
            j++;
            i++;
        }
        int max=a[0];                           //先初始化 这个二进制串中连续的1或连续的0出现的最大次数为a[0]这个数值
        for(int n=1;n<a.length;n++){            //判断这个二进制串中连续的1或连续的0出现的最大次数
            if(a[n]>max){
                max=a[n];
            }
        }
        System.out.println("这个二进制串中连续的1或连续的0出现的最大次数为:"+max);       // 输出
    }
}
2012-12-18 19:04
快速回复:求一个二进制串中连续的1或连续的0出现的最大次数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023731 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved