您的位置:首页 > 编程语言 > Java开发

输出最长子串 Java实现

2013-11-11 17:10 190 查看
一会要参加学校的程序设计比赛,写个小东西热身。

Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
char[] arr = input.toCharArray();	//放数组里方便处理

int MaxCharPos = 0, MaxLen = 1;	//记录最长子串起始位置及长度
int charPos = 0, len = 1;//当前子串起始位置及长度
for (int i = 0; i < arr.length - 1; i++) {
charPos = i;
len = 1;
for (int j = i; j + 1 < arr.length && arr[j] == arr[j + 1]; j++) {
++len;
}
if (len > MaxLen) {
MaxCharPos = charPos;
MaxLen = len;
}
}
//输出结果
for (int i = 0; i < MaxLen; i++) {
System.out.print(arr[MaxCharPos + i]);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: