《好未来编程题》字符串中找出连续最长的数字串
生活随笔
收集整理的這篇文章主要介紹了
《好未来编程题》字符串中找出连续最长的数字串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:讀入一個字符串str,輸出字符串str中的連續最長的數字串
輸入描述:
個測試輸入包含1個測試用例,一個字符串str,長度不超過255。
輸出描述:
在一行內輸出str中里連續最長的數字串。
示例1
輸入
abcd12345ed125ss123456789
輸出
123456789
解析:該題目不難,但是提交的時候有注意點,就是在while里需要加break才能通過,無語了,貌似不支持連續測試的樣子,ok,直接上代碼了。
思考:回頭想了想,其實該題目沒有說的很清楚,比如有可能連續的最長子串不止一個,輸出第一個?還是最后一個?還是都輸出?所以題目的意思應該是假定只有一個最長的連續子串才。
import java.util.Scanner; /*** Created by Administrator on 2017/8/8.*/ public class Main {public static String maxSubNumbers(String s){String result="";for(int i=0;i<s.length();i++){if(s.charAt(i)>='0'&&s.charAt(i)<='9'){//當前的字符是數字了int count=1;//計數一次int index=i;//存儲當前的截止索引for(int j=i+1;j<s.length();j++){//從當前的下一個字符開始找if(s.charAt(j)>='0'&&s.charAt(j)<='9'){count++;//找到了就計數index=j;//需要保存當前的索引,便于后面求子串}else {break;}}if(count>=result.length()){result=s.substring(i,index+1);}}else {continue;}}return result;}public static void main(String[] args) {Scanner sc = new Scanner(System.in);while (sc.hasNext()){String s=sc.next();System.out.println(maxSubNumbers(s).trim());break;}} }總結
以上是生活随笔為你收集整理的《好未来编程题》字符串中找出连续最长的数字串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《网易编程题》下厨房
- 下一篇: 《美团点评编程题》整数加法