剑指Offer之把数组排成最小的数

题目描述:

输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。

参考代码:

public String minNumber(int[] nums) {
  if(nums == null || nums.length == 0)return "";
  String[] str= new String[nums.lengtn];
  for(int i = 0; i < nums.length; i++){
     str[i] = String.valueOf(nums[i]);
  }
  Arrays.sort(str, (x, y) -> (x + y).compareTo( y + x ));
  StringBuilder sb = new StringBuilder();
  for(String s : str){
     sb.append(s);
  }

  return sb.toString();
}

你可能感兴趣的:(剑指offer,字符串,leetcode,数据结构,算法)