/**
* 解题思路:此题其实是冒泡排序的变种
* 比较的不是前后两个元素s1和s2的大小,而是s1+s2和s2+s1的大小,哪个元素放前面的组合更小,就酱这个元素排前面
**/
public String PrintMinNumber(int [] numbers) {
if(numbers == null || numbers.length == 0) {
return "";
}
int temp;
for(int i = 0; i < numbers.length; i++) {
for(int j = i + 1; j <numbers.length; j ++) {
if(Integer.valueOf(numbers[i] + "" + numbers[j]) > Integer.valueOf(numbers[j] + "" + numbers[i])) {
temp = numbers[i];
numbers[i] = numbers[j];
numbers[j] = temp;
}
}
}
StringBuilder builder = new StringBuilder();
for(int n : numbers) {
builder.append(n);
}
return builder.toString();
}