Pergunta de entrevista da empresa Apple

private static Map<String, Integer> namesToNumPurchases = new HashMap<String, Integer>() {{ put("Chris", 10); put("Bob", 5); put("David", 5); put("Sue", 12); put("Jim", 3); }}; /* Required output: 3: Jim 5: Bob, David 10: Chris 12: Sue */

Respostas da entrevista

Sigiloso

8 de jul. de 2018

Map>> ret = mappy.entrySet().stream(). collect( Collectors.groupingBy( x -> x.getValue())); Map result = ret.entrySet().stream().collect ( Collectors.toMap( x -> x.getKey(), y -> y.getValue().stream().map( p -> p.getKey()).collect(Collectors.joining(",")))); System.out.println(result);

Sigiloso

3 de dez. de 2018

d = {'A': 10, 'B': 5, 'C': 5, 'D': 12, 'E': 3} d2 = {} for k, v in d.items(): if d2.get(v, '') == '': d2[v] = k else: d2[v] = "{}, {}".format(d2[v], k) for k, v in d2.items(): print "{}: {}".format(k, v)