题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
https://www.nowcoder.com/practice/2c81f88ecd5a4cc395b5308a99afbbec
java:
1、非数字全部用空格代替;
2、分割空格得到每组不同的数字集合;
3、求出数字集长度最大值;
4、依次遍历,若为最大值则依次输出;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
String str = sc.nextLine();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (!Character.isDigit(c)) {
sb.append(" ");
} else {
sb.append(c);
}
}
String[] arr = sb.toString().split(" ");
int max = 0;
for (int i = 1; i < arr.length; i++) {
if (arr[i - 1].length() < arr[i].length()) {
max = max > arr[i].length() ? max : arr[i].length();
}
}
for (int i = 0; i < arr.length; i++) {
if (arr[i].length() == max) {
System.out.print(arr[i]);
}
}
System.out.println("," + max);
}
}
}
