阿里Java算法面试题:整数数组组合难题成 “拦路虎”,求解惑
36岁又失业了,之前经常加班,现在好了,又焦虑的;简历投到 “手软” 毫无回音,阿里外包面试栽在这道数组组合题,同行们也这样吗?下面给出deepseek的答案,共勉
算法题目:题目整数数组,组合后返回最大的组合数,列:[2,5,30,34,9] 返回 9534302;
public class demo {
public static void main(String args[]) {
int[] arr = { 2,5,30,34,9};
System.out.println(getMax(arr));
}
public static String getMax(int[] nums) {
if (nums == null) {
return "";
}
String[] numsStr = new String[nums.length];
int i = 0;
for (int num : nums) {
numsStr[i++] = num + "";
}
Arrays.sort(numsStr, new Comparator<String>() {
public int compare(String str1, String str2) {
String temp1 = str1 + str2;
String temp2 = str2 + str1;
return (-temp1.compareTo(temp2));
}
});
StringBuilder sb = new StringBuilder();
for (String s : numsStr)
sb.append(s);
return sb.toString();
}
}