牛客题霸 [拼接所有的字符串产生字典序最小的字符串] C++题解/答案

题目描述

给定一个字符串的数组strs,请找到一种拼接顺序,使得所有的字符串拼接起来组成的字符串是所有可能性中字典序最小的,并返回这个字符串。

题解:

用sort对所有strs进行排序,然后从头到尾拼接起来即可

代码:

class Solution {
   
public:
    /** * * @param strs string字符串vector the strings * @return string字符串 */
    string minString(vector<string>& strs) {
   
        // write code here
        sort(strs.begin(),strs.end(),cmp);
        string ans;
        for(int i=0;i<strs.size();i++)ans+=strs[i];
        return ans;
    }
    static bool cmp(string s1,string s2)
    {
   
        return s1+s2<s2+s1;
    }
};