贪心算法-拼接字符串使得字典顺序最小问题

题目1

给定一个由字符串组成的数组strs,必须把所有字符串拼接起来,返回所有可能的拼接结果中,字典序最小的结果

思路:对数组排序,排序规则是对a+b和b+a的字符串进行比较大小,返回较小的顺序放到数组中最后将数组累加即得

c 复制代码
public static String lowestString2(String[] strs) {
    if (strs == null || strs.length == 0) {
        return "";
    }
    Arrays.sort(strs, new StringCompartor());

    String res = "";
    for (int i = 0; i < strs.length; i++) {
        res += strs[i];
    }
    return res;
}

public static class StringCompartor implements Comparator<String> {

    @Override
    public int compare(String a, String b) {
        return (a + b).compareTo(b + a);
    }
}
相关推荐
醒醒该学习了!3 分钟前
Prompt提示词——带有深度思考模型的提示方法(理论篇)
人工智能·算法·prompt
君为先-bey3 分钟前
Latte——视频生成的潜在扩散变换器
算法·机器学习·音视频·扩散模型
浅念-6 分钟前
LeetCode刷题专题:FloodFill泛滥填充算法剖析
数据结构·算法·leetcode·职场和发展·深度优先·宽度优先
笨蛋不要掉眼泪6 分钟前
Java并发编程:深入剖析 ArrayBlockingQueue
java·开发语言·算法·并发
菜菜的顾清寒10 分钟前
力扣HOT100(33)二叉树的最大深度
算法·leetcode·职场和发展
Deepoch21 分钟前
Deepoc数学大模型:重塑半导体研发与制造的核心算法范式
人工智能·算法·机器学习·半导体·deepoc·数学大模型
一支黑色の铅笔23 分钟前
MongoDB Aggregation Pipeline 常用 Stage 速查
数据库·算法·mongodb
Bingorl28 分钟前
机器学习之决策树算法
算法·决策树·机器学习
qingyulee1 小时前
线性回归、决策树
人工智能·算法·线性回归
Zhang~Ling1 小时前
C++ 继承机制详解下:多继承、虚继承与菱形继承底层原理
开发语言·c++·算法