思路:这道题有两个维度,身高和数目,要排好一个再去尝试排另一个
首先按身高排序:(使用了sort函数)
Arrays.sort(people,(a,b)->{
if(a[0]==b[0]) return a[1]-b[1];
return b[0]-a[0];
});
再根据数目从前到后插入(因为将后面的往前插不会影响前面已经排好的)
LinkedList<int[]> que = new LinkedList<>();
for(int[]p:people)
{
que.add(p[1],p);
}
最后将链表再转化为二维数组
return que.toArray(new int[people.length][]);