题目
思路
排序+贪心题,贪心思路:为使整个数组组成最大值,先使每两个数字组成的数字最大。根据这个思想对数组排序
实现
重写排序方法需要的比较类Comparer(C#)或者Comparator(Java)。
public class MyComparer: IComparer<int>
{
public int Compare(int str1, int str2)
{
string num1 = str1.ToString() + str2.ToString();
string num2 = str2.ToString() + str1.ToString();
return num2.CompareTo(num1);
}
}
public class Solution {
public string LargestNumber(int[] nums) {
Array.Sort(nums,new MyComparer());
string res="";
foreach(int str in nums){
res+=str.ToString();
}
if(res[0]=='0')
return "0";
return res;
}
}