쿠폰 승리 - 질문이 최소 번호 배열되어 어레이 (45)의 표면 (문자열 정렬)

1. 주제

양의 정수 배열을 입력 모든 숫자의 배열이 서로 접합 다수 배치 접합은 모든 번호 인쇄 가능 최소 하나.

示例 1:
输入: [10,2]
输出: "102"

示例 2:
输入: [3,30,34,5,9]
输出: "3033459"

提示:
0 < nums.length <= 100
说明:
输出结果可能非常大,所以你需要返回一个字符串而不是整数
拼接起来的数字可能会有前导 0,最后结果不需要去掉前导 0

출처 : 숙박 버튼 (LeetCode)
링크 : HTTPS : //leetcode-cn.com/problems/ba-shu-zu-pai-cheng-zui-xiao-de-shu-lcof
모든 네트워크에서 공제 저작권. 상업 무단 전재 소스를 표시하시기 바랍니다 승인 된 공식, 비상업적 재판에 문의하시기 바랍니다.

2. 문제 해결

  • 먼저 디지털의 문자열로 변환
  • 그런 종류의 문자열,a+b < b+a
class Solution {
public:
    string minNumber(vector<int>& nums) {
    	vector<string> number;
    	for(auto& n : nums)
    		number.push_back(to_string(n));
    	sort(number.begin(), number.end(),[](const string& a, const string& b)
    		{return a+b < b+a;});
    	string ans;
    	for(auto& n : number)
    		ans += n;
    	return ans;
    }
};

그림 삽입 설명 여기

게시 된 660 개 원래 기사 · 원 찬양 534 · 전망 160 000 +

추천

출처blog.csdn.net/qq_21201267/article/details/104451645