题解 | #在字符串中找出连续最长的数字串#
在字符串中找出连续最长的数字串
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); } } }