编写一个能将给定非负整数列表中的数字排列成最大数字的函数。例如,给定[50,2,1,9],最大数字为95021。


/*** This algorithm offers guaranteed n*log(n) performance.* * @param array* @return*/
public static String getLargestNumByArranged(Integer[] array) {Arrays.sort(array, new Comparator<Object>() {/**** 默认是从小到大排序 if the result > 0 then swap*/public int compare(Object o1, Object o2) {String left = o1.toString();String right = o2.toString();// 按字典顺序比较 if the result > 0 then * -1return (left + right).compareTo(right + left) * -1;// return (right + left).compareTo(left + right);}});StringBuffer sb = new StringBuffer();for (Integer integer : array) {sb.append(integer.toString());}return sb.toString();
}public static void main(String[] args) {Integer[] VALUES = { 50, 2, 100, 99, 5, 7, 51, 50, 11 };System.out.println(getLargestNumByArranged(VALUES));
}

本文参考:
http://www.genshuixue.com/i-cxy/p/8018152

编写一个能将给定非负整数列表中的数字排列成最大数字的函数。例如,给定[50,2,1,9],最大数字为95021。相关推荐

  1. 编写一个能将给定非负整数列表中的数字排列成最大数字的函数

    编写一个能将给定非负整数列表中的数字排列成最大数字的函数.例如,给定[50,2,1,9],最大数字为95021. public class TestFindMaxNum { /** * @param ...

  2. 将给定非负整数列表中的数字排列成最大数字的2种方法。例如,给定[50,2,1,9],最大数字为95021。

    一.题目简介 编写一个能将给定非负整数列表中的数字排列成最大数字的函数.例如,给定[50,2,1,9],最大数字为95021. 此处以如下数组为例:Integer[] num=new Integer[ ...

  3. 数据结构第5章例题 若矩阵Am×n中存在某个元素aij满足:aij是第i行中的最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点。试编写一个算法,找出A中的所有鞍点。

    [例5.1] 若矩阵Am×n中存在某个元素aij满足:aij是第i行中的最小值且是第j列中的最大值,则称该元素为矩阵A的一个鞍点.试编写一个算法,找出A中的所有鞍点. 算法如下: void saddl ...

  4. 请编写一个程序,请将字符串中所有字母全部向后移一位,最后一个字母放在字符串的开头,最后将新的字符串输出。

    请编写一个程序,请将字符串中所有字母全部向后移一位,最后一个字母放在字符串的开头,最后将新的字符串输出. ran = [] result = "" old_str = input( ...

  5. 请编写一个程序,用于统计字符串中每个字母的出现次数(字母忽略大小写),统计出结果后,请按照{'a':3,'b':2}的格式输出。

    请编写一个程序,用于统计字符串中每个字母的出现次数(字母忽略大小写),统计出结果后,请按照{'a':3,'b':2}的格式输出. ras = [] mystr = input("请输入一个全 ...

  6. 编写一个Java程序,在程序中包含一个Employee类,Employee类包含name、age、salary三个成员变量

    编写一个Java程序,在程序中包含一个Employee类,Employee类包含name.age.salary三个成员变量,Employee类中有4个构造方法,分别为无参的.带一个参数用来对name属 ...

  7. java-commen判断一个数据是否存在于列表中

    /** * 判断一个数据是否存在于列表中 *  * @param list * @param str * @return */ public static boolean isExist(List l ...

  8. 假设二叉树采用二叉链存储结构,编写一个算法,求出二叉树中的叶子结点数,并设计主函数调用上述算法。

    假设二叉树采用二叉链存储结构,编写一个算法,求出二叉树中的叶子结点数,并设计主函数调用上述算法. #include<iostream>//蓝多多算法实验五:二叉树的应用(二) #inclu ...

  9. 在Linux环境下用C语言编写一个乘法程序mult,从命令行接收两个数字,然后输出其乘积;再用C语言编写一个exec1程序,在程序中使用execvp调用mult程序计算5与10的乘积。

    在Linux环境下用C语言编写一个乘法程序mult,从命令行接收两个数字,然后输出其乘积:再用C语言编写一个exec1程序,在程序中使用execvp调用mult程序计算5与10的乘积. 1.mult. ...

  10. java编写salary函数_编写一个Java程序,在程序中包含一个Employee类,Employee类包含name、age、salary三个成员变量...

    编写一个Java程序,在程序中包含一个Employee类,Employee类包含name.age.salary三个成员变量,Employee类中有4个构造方法,分别为无参的.带一个参数用来对name属 ...

最新文章

  1. Gut:人体最初的微生物起源与生殖健康
  2. 1载波把32个信道按_「防疫」截至8月27日,单日确诊新增32例,张文宏带来1个坏消息...
  3. Activemq -- Spring 整合
  4. 标记偏见_分析师的偏见
  5. CodeForces - 894E Ralph and Mushrooms (强连通缩点+dp)
  6. 随心所欲学Java,起步-心理安慰
  7. asp与php对比,ASP和PHP文件操作速度的对比
  8. 将帐套升级到百万用户纪念版实践教程
  9. 计算器归零按键c语言,计算器有关按键说明大全
  10. 雷达信号处理——雷达系统
  11. 一个抄底指标(52周新低的股票占比)
  12. 十进制进制法_二进制/八进制/十进制/十六进制 怎么学会?是怎么算的方式?...
  13. Item25 Use std::move on rvalue reference, std::forward on universal references
  14. JAVA范例 - Applet小应用程序
  15. 简单梳理下git的使用感受,思考git中最重要的是什么
  16. 【矩阵论】1.准备知识——复数域上的内积域正交阵
  17. 修改Android“长按”的反应时间
  18. 真正靠谱的手机清理APP与方法,轻松帮你干掉几个G垃圾!
  19. Arch linux 安装 docker
  20. k8s 容器编排(高级版)

热门文章

  1. GlassFish漏洞总结复现
  2. linux企鹅吉祥物的名字,让我来告诉你Linux为何选吉祥物是企鹅
  3. SQL中开窗函数first_value() 和 last_value()
  4. Unity Android Ios 微信SDK 接入
  5. 微信SDK删除支付模块流程
  6. 【DL】第 12 章: 生成式深度学习
  7. Python实现常用的假设检验
  8. 求助 NVIDIA GeForce experience安装失败
  9. 回顾2017展望2018
  10. web网页设计实例作业 ——中国茶文化(6页) 茶文化网页制作作业_中国化(网页设计...