21:52 2022/7/26华为机试三道题附带答案
备注:未ac,华为不难,难的是个人很难进入答题状态!
第一道
给定一个字符串,是工作记录的日志时间,时间为四段格式,AA:BB:CC:DDD
其中AA为0-24,BB为0-24,CC为0-24,DDD为0-999,可能由0填充,相同时间按照记录排序,否则按照时间升序!
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
class preDealString implements Comparable<preDealString> {
String line;
String lineNext;
public String getLine() {
return line;
}
public String getLineNext() {
return lineNext;
}
public preDealString(String string) {
// 构建
String[] stringArray = string.split(":");
int AA = Integer.parseInt(stringArray[0]);
int BB = Integer.parseInt(stringArray[1]);
int CC = Integer.parseInt(stringArray[2]);
int DD = Integer.parseInt(stringArray[3]);
this.line = string;
this.lineNext = "" + AA + BB + CC + DD;
}
public int compareTo(preDealString n) {
return lineNext.compareTo(n.lineNext);
}
}
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader