我有一个包含元组的Erlang列表,例如:
[{1, "AAA"}, {2, "AAA"}, {3, "AAAAAAAA"}]
我该如何从这个元组列表中获取第一个元素最大的元组?谢谢。
使用lists:keysort/2函数。
1> lists:keysort(1, [{1, "AAA"}, {2, "AAA"}, {3, "AAAAAAAA"}]).
编辑:看起来我读你的问题太快了。如果你只想要包含最大值的一个元组,并且你的元组大小相同,那么Arjan应该是被接受的答案。
如果你只想要包含最大值的一个term()元素,并且如果Arjan所说的类似元组大小的规则不适用,则可以使用lists:foldl/3
或自己的递归函数。
除非你想要整个列表排序,否则排序整个列表是不必要的。我的错误。