招銀三面手引き裂きコード問題(文字列連続サブストリング)
1466 ワード
import java.util.*;
/* ,
*
* , */
public class continuationsubstring {
public static void main(String[] args) {
LinkedList list = new LinkedList();
List res = getRes("dad", list);
System.out.println(res);
}
public static List getRes(String str, List list) {
int count = 1;//count , 1
char ch = str.charAt(0);
for (int i = 0; i < str.length(); i++) {
// ch count++
while (++i < str.length() && str.charAt(i) == ch) {
count++;
}
// , 1 , list
if (count > 1) {
StringBuilder builder = new StringBuilder();
for (int j = 0; j < count; j++) {
builder.append(ch);
}
list.add(builder.toString());
}
// while ,
// ch i count
if (i < str.length()) {
ch = str.charAt(i);
count = 1;// count 1, 1
i--;// while ++i,
}
}
return list;
}
}