zoukankan      html  css  js  c++  java
  • 179. Largest Number

    该题解决方法是排序,我们只需要对两个数的对比方法进行改写就好了。改写思路为两个字符串 a 和 b, 如果 a + b 小于 b + a, 那么就交换位置。

    代码如下:

     1 class Solution {
     2     public String largestNumber(int[] nums) {
     3         String[] str = new String[nums.length];
     4         for(int i = 0 ; i < nums.length ; i++){
     5             str[i] = String.valueOf(nums[i]);
     6         }
     7         
     8         Comparator<String> comp = new Comparator<String>(){
     9             public int compare(String a, String b){
    10                 return (b+a).compareTo(a+b);
    11             }
    12         };
    13         
    14         Arrays.sort(str, comp);
    15         
    16         if(str[0].equals("0"))
    17             return "0";
    18         
    19          sb = new StringBuilder();
    20         
    21         for(String s:str)
    22             sb.append(s);StringBuilder
    23         
    24         return sb.toString();
    25     }
    26     
    27 }

    END

  • 相关阅读:
    接口类和抽象类
    生成器和迭代器
    装饰器
    KMP算法(java,c++)
    java EE
    XML
    SQL语法
    单元测试
    JDBC
    SpringCloud
  • 原文地址:https://www.cnblogs.com/sssysukww/p/8966759.html
Copyright © 2011-2022 走看看