- A+

Category：Languages

I have the following graph:

`graph = {0 : {5:6, 4:8}, 1 : {4:11}, 2 : {3: 9, 0:12}, 3 : {}, 4 : {5:3}, 5 : {2: 7, 3:4}} `

I am trying to return the key that has the highest value in this graph. The expected output in this case would be 2 as key 2 has the highest value of 12.

Any help on how I can achieve this would be greatly appreciated.

Find the key whose maximum value is maximal:

`max((k for k in graph), key=lambda k: max(graph[k].values(), default=float("-inf"))) `

The empty elements are disqualified by the ridiculous maximum. Alternately, you can just pre-filter such keys:

`max((k for k in graph if graph[k]), key=lambda k: max(graph[k].values())) `