javascript - 如何从javaScript中的一组数组中形成最大数

标签 javascript arrays sorting join

我有一个包含 arr = [1,3,34,44,4,45,6,76,9,98,23] 的数组,并希望从上面的数组。 O/P 编号为 99876645444343231。

我尝试对这些数字集进行处理,这对 2 位数字工作正常,但不能超过 2 位数字。谁能提出一个通用的答案?

最佳答案

您可以采用一个数组,其中包含字符串值和 ab 的连接值以及 ba 的值 取其delta进行排序,反射(reflect)两个字符串的排序顺序,取较大的值供后面join。

function getLargest(array) {
    return array
        .map(String)
        .sort((a, b) => (b + a) - (a + b))
        .join('');
}

console.log(getLargest([1, 3, 34, 44, 4, 45, 6, 76, 9, 98, 23]));

与返回错误结果(第二行)的简单字符串降序比较。

function getLargest(array) {
    return array
        .map(String)
        .sort((a, b) => (b + a) - (a + b))
        .join('');
}

console.log(getLargest([1, 3, 34, 44, 4, 45, 6, 76, 9, 98, 23]));
console.log([1, 3, 34, 44, 4, 45, 6, 76, 9, 98, 23].sort().reverse().join(''));

关于javascript - 如何从javaScript中的一组数组中形成最大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49530968/

相关文章:

javascript - 如何在 React (JSX) 中清除/重置状态内的数组

javascript - 在关于 expect.throw 的链中进行单元测试时遇到问题

php - Select from table where 子句 from array from another table

arrays - 谷歌工作表 : How to vlookup by matching value in between max and min?

寻找最佳可用时间的算法

javascript - 将 'active' 类添加到 li 中,该类的名称与您所在页面的名称相似

python - 在 NumPy 数组中将特定值设置为 0

arrays - 列出出现在两个列表中的元素?

jQuery ui - 克隆代码不响应排序

javascript - HTML 响应式顶部导航菜单