Sort the Jumbled Numbers

给一个mapping数组, 给一个数组nums, 求按照mapping数组转化后的数字的排列nums.

这题就是存一下转化后的数字, 然后排列即可. 需要注意java里面的lambda不能比较primitive type

class Solution {
    public int[] sortJumbled(int[] mapping, int[] nums) {
        Integer[] nn = new Integer[nums.length];
        Map<Integer, Integer> map = new HashMap<>();
        for(int i = 0; i < nums.length; i++){
            nn[i] = nums[i];
            map.put(nums[i], map.getOrDefault(nums[i], convert(nums[i],mapping)));
        }
        Arrays.sort(nn, (a, b) -> (map.get(a) - map.get(b)));
        for(int i = 0; i < nums.length; i++){
            nums[i] = nn[i];
        }
        return nums;
    }
    
    private int convert(int n, int[] mapping){
        StringBuffer sb = new StringBuffer();
        if(n == 0)
            return mapping[0];
        while(n != 0){
            sb.insert(0,mapping[n % 10]);
            n /= 10;
        }
        return Integer.valueOf(sb.toString());
    }
}