题解 | #把数组排成最小的数#

把数组排成最小的数

http://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993

使用优先级队列解决此问题。

import java.util.*;
public class Solution {
    public String PrintMinNumber(int [] numbers) {
        // 自定义排序规则
        PriorityQueue<Integer> queue = new PriorityQueue<Integer>((a,b)->{return (Integer.valueOf(a + "" + b))-(Integer.valueOf(b + "" + a));});
        for(int i : numbers){
            queue.add(i);
        }
        String res = "";
        int size = queue.size();
        for(int i = 0; i < size; i++){
            res += String.valueOf(queue.poll());
        }
        return res;
    }
}
全部评论

相关推荐

小叮当411:应该是1-3个月吧
点赞 评论 收藏
分享
06-13 10:15
门头沟学院 Java
想去夏威夷的大西瓜在...:我也是27届,但是我现在研一下了啥项目都没有呀咋办,哎,简历不知道咋写
点赞 评论 收藏
分享
半解316:内容充实,细节需要修改一下。 1,整体压缩为一页。所有内容顶格。 2,项目描述删除,直接写个人工作量 修改完之后还需要建议,可以私聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务