1. 程式人生 > >對輸入一串字串找出最大的數字

對輸入一串字串找出最大的數字

憂桑,中午11點有一場百詞斬的筆試,但是11.10十分才知道,匆匆忙忙的回到宿舍開啟電腦做題,三題程式設計題,做出了第三道,本地編譯通過,但是到牛客上就是不通過,憂桑。現在貼出第一道題目。

要求:輸入一串字串, 包含字母和數字, 輸出最大的數字。比如:fasdf323fajs424434fajsdfl1,結果應該為424434.

筆試結束了,自己通過暴力的方式寫了下:

package com.sort;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

public class Test1 {

	public static void main(String[] args) { 
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);
		String str = scan.nextLine();
		ArrayList arr = new ArrayList<>();
		for(int i = 0 ; i < str.length() ; i ++){
			if(!Character.isDigit(str.charAt(i))){
				String s = str.replace(str.charAt(i), ' ');
				str = s;
			}
		}
		String[] ss = str.split(" ");
		for(String sd : ss){
			if(sd!=null){
				arr.add(sd);
			}
		}
		Collections.sort(arr);
		System.out.println(arr.get(arr.size()-1));
	}
}