Erlang列表问题

时间:2011-04-27 10:48:55

标签: list erlang tuples

我在Erlang中有一个包含元组的列表,例如:

[{1, "AAA"}, {2, "AAA"}, {3, "AAAAAAAA"}]

如何使用此元组中的max first元素从此列表中获取元组?

谢谢。

2 个答案:

答案 0 :(得分:5)

在这种情况下,lists:max/1会返回您想要的内容。 为此,所有元组必须具有相同数量的元素。

答案 1 :(得分:3)

使用lists:keysort/2

1> lists:keysort(1, [{1, "AAA"}, {2, "AAA"}, {3, "AAAAAAAA"}]).

Another thread

编辑:似乎我快速阅读你的问题。如果你只想要一个包含最大值的元组,并且你的元组大小相同,那么Arjan应该是接受的答案。

如果你只想要一个包含最大值的term()元素,并且如果规则中具有类似元组大小Arjan的规则不适用,我将使用lists:foldl/3或自己的递归函数。

除非您希望对整个列表进行排序,否则无需对整个列表进行排序。我的错误。