zoukankan      html  css  js  c++  java
  • 剑指Offer(Java版)第三十七题:输入一个正整数数组,把数组里所有数字拼接起来排成一个数, 打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321}, 则打印出这三个数字能排成的最小数字为321323。

    /*
    输入一个正整数数组,把数组里所有数字拼接起来排成一个数,
    打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},
    则打印出这三个数字能排成的最小数字为321323。
    */

    import java.util.*;

    public class Class37 {

    public String PrintMinNumber(int [] numbers){
    if(numbers == null || numbers.length <= 0){
    return "";
    }
    ArrayList<String> zuhe = new ArrayList<String>();
    for(int number : numbers){
    zuhe.add(String.valueOf(number));
    }
    Collections.sort(zuhe,new Comparator<String>(){
    public int compare(String s1, String s2){
    String a1 = s1 + s2;
    String a2 = s2 + s1;
    return a1.compareTo(a2);
    }
    });
    StringBuilder s = new StringBuilder();
    for(String str : zuhe){
    s.append(str);
    }
    return s.toString();

    }
    public void test(){
    int[] numbers = new int[]{3,32,321};
    System.out.println(PrintMinNumber(numbers));
    }

    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Class37 c = new Class37();
    c.test();

    }

    }

  • 相关阅读:
    ubuntu防火墙设置通过某端口
    pandas入门
    pyplot入门
    numpy教程
    跨域请求 spring boot
    spring boot 启动流程
    代理配置访问
    AOP,拦截器
    spring boot 启动不连接数据库
    Python 3.x 连接数据库(pymysql 方式)
  • 原文地址:https://www.cnblogs.com/zhuozige/p/12517217.html
Copyright © 2011-2022 走看看