0

我知道我可以Math.max(int, int)用来返回两个整数中的最高值,但是假设我有一个 SQL 表,其中包含名称、某种排名/分数(以整数的形式),我如何获取这些分数并获得其中最高的?

或者,我怎样才能将它们从高到低排序,然后我可以处理其余的?

4

2 回答 2

4

你可以通过一个简单的 MySQL 查询来做到这一点。

例子:

SELECT * FROM table_name ORDER BY score DESC LIMIT 1;

第一行将是最高的。

于 2012-11-28T00:50:20.553 回答
2

好吧,排序比找到最大值更昂贵。

找到最大值的可能最流行的代码是:

int max = data[0];
for (int i = 1; i < data.length; i++) {
    max = Math.max(max, data[i]);
}

这样做并没有错。

排序会起作用,但排序是 in O(n log n),而这显然只是O(n)

于 2012-11-28T00:52:01.937 回答