给你一个字符串例如: "kaaabzzyyyy"
找出字符串中一样的字符连续并且是最多的并算出它的个数
如字符串 "kaaabzzyyyy" yyyy最多 连续出现了4次
就返回 (y,4)
如给出字符串如 "kaaabbbzzy"
aaa bbb 都出现了3次 知返回先出现的(a,3)
字符串 长度为(1 - 40)
是(a -z)之间的
定义 public String UnitConvert(String aaa)
找出字符串中一样的字符连续并且是最多的并算出它的个数
如字符串 "kaaabzzyyyy" yyyy最多 连续出现了4次
就返回 (y,4)
如给出字符串如 "kaaabbbzzy"
aaa bbb 都出现了3次 知返回先出现的(a,3)
字符串 长度为(1 - 40)
是(a -z)之间的
定义 public String UnitConvert(String aaa)
解决方案 »
- 我想输出我叫张三+年龄+班级+男
- 具有网络功能的随手画例程如何实现呢?
- 请教下,这个哪里错了?
- 如何实现数据库的实时查询
- 在众多的免费JAVA服务器中,哪个最好,哪个最具有商业价值?
- 同志们,请把http://expert.csdn.net/Expert/topic/1257/1257981.xml?temp=.5208246的答案写在这里!
- 100分求解数据库连接的问题
- CSDN的高手们,请多多帮忙!!感激不尽,唯以微薄之分相献!
- foreach遍历二维数组出现的问题
- Java IO开销测试比较(不包含直接存取内存方式),请不吝赐教.
- 求助:编写程序完成一个通讯录,采用树形,信息存入文件,支持csv文件的导入和导出。
- 请问我编写的聊天室程序,如果服务器,客户端在一台电脑上可以连接,并且可以连接多个客户端,但是如果服务器和客户端分别在2台电脑上,
StringTokenizer st = new StringTokenizer(strDemo, strItem ,true);
int i = 0;
final int nLen = st.countTokens();
int nCurrCount = 0;
int nMax = 0;
String[] strResult = new String[nLen];
while (st.hasMoreTokens()) {
strResult[i] = st.nextToken();
if (strResult[i].equals(strItem)) {
++nCurrCount;
} else {
if (nCurrCount>nMax)
nMax = nCurrCount;
nCurrCount = 0;
}
++i;
}
return nMax;
}String strDemo = "kabzzyyaaaayy";
String strItem = "";
char [] chArray = strDemo.toCharArray();
HashMap hpResult = new HashMap();
for (int i =0 ;i < chArray.length ; ++i) {
System.out.println("Begin------------------------------------------------------");
strItem = ""+ chArray[i];
if (!hpResult.containsKey(strItem))
hpResult.put(strItem , ""+getMaxCount(strDemo,strItem));
}
//结果存在hpResult中
www.topcoder.com上面有很多这样的题目的
char c[] = str.toCharArray();
char cpre = c[0];
int endPos = 0;
int count = 1;
int max = 0;
for(int i=1;i<c.length;i++){
if(c[i] == cpre){
count++;
}else{
if(count>max){
endPos = i;
max = count;
}
count=1;
cpre = c[i];
}
} return str.substring(endPos-max,endPos);
}
int index = 0, times = 1, maxTimes = 0;
char[] ccc = aaa.toCharArray();
char myChar = 0, maxChar = 0;while(index < aaa.length()){
if(myChar == ccc[index]){
times++;
}
else{
myChar = ccc[index];
times = 1;
}
if(maxTimes < times){
maxTimes = times;
maxChar = myChar;
}
index++;
}
return "(" + maxChar + ", " + maxTimes + ")";
}public static void main(String[] args){
UnitConvert uc = new UnitConvert();
System.out.println(uc.findUnitConvert("kaaabzzyyyy"));
}
}