将数字转成字符串,然后对字符串按指定规则排序
指定规则:a+b>b+a,则a排在b前面
class Solution {
public:
static bool cmp(string a, string b){
return a+b > b+a;
}
string solve(vector<int>& nums) {
// write code here
vector<string> s;
for(int i=0; i<nums.size(); ++i){
s.push_back(to_string(nums[i]));
}
sort(s.begin(), s.end(), cmp);
if(s[0] == "0") return "0";
string res = "";
for(int i=0; i<nums.size(); ++i)
res += s[i];
return res;
}
};
京公网安备 11010502036488号