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

题目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);
    }
}
相关推荐
人道领域13 小时前
【LeetCode刷题日记】225.用队列实现栈--三招实现栈操作(多种思维)
java·开发语言·算法·leetcode·面试
新新学长搞科研13 小时前
【高届数机械工程会议】第十二届机械工程、材料和自动化技术国际学术会议(MMEAT 2026)
运维·人工智能·算法·机器学习·自动化·软件工程·激光
狐璃同学13 小时前
数据结构(2)线性表
数据结构·算法
啦啦啦_999913 小时前
4. KNN算法之 特征预处理(归一化&标准化)
算法
淘气包海鸟14 小时前
雷达基本原理
算法·信息与通信
Tisfy14 小时前
LeetCode 2615.等值距离和:分组(哈希表+前缀和)
算法·leetcode·散列表
啦啦啦_999914 小时前
2. KNN算法之 分类&回归API实现
算法
X journey14 小时前
机器学习进阶(23):K-means聚类
人工智能·算法·机器学习
mjhcsp14 小时前
根号快速计算牛顿迭代法
开发语言·c++·算法·迭代法
菜鸟丁小真14 小时前
LeetCode hot100-79.单词搜索
数据结构·算法·leetcode·深度优先·知识总结