名次排名函數

名次排名函數是用來對一系列數字進行排序,並返回每個數字的相應排名。在不同的 programming 語言中,排名函數可能有不同的名稱和用法,但基本概念是一致的。

在 Excel 中,排名函數是 RANK.EQRANK.AVG

在 SQL 中,排名函數包括 RANK()DENSE_RANK()ROW_NUMBER()

在 C++ 中,可以使用 std::sortstd::distance 來實現排名函數。

#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    std::vector<int> numbers = {4, 2, 9, 5, 3};
    std::sort(numbers.begin(), numbers.end());

    for (int i = 0; i < numbers.size(); ++i) {
        std::cout << numbers[i] << " ranked " << std::distance(numbers.begin(), numbers.begin() + i) + 1 << std::endl;
    }

    return 0;
}

這個例子輸出了每個數字的排名:

4 ranked 5
2 ranked 4
9 ranked 1
5 ranked 3
3 ranked 2

在 Python 中,可以使用 sorted() 內置函數和 enumerate() 來實現排名函數。

numbers = [4, 2, 9, 5, 3]

for i, value in enumerate(sorted(numbers)):
    print(f"{value} ranked {i + 1}")

這個例子輸出了每個數字的排名:

2 ranked 4
3 ranked 3
4 ranked 5
5 ranked 2
9 ranked 1

這些是一些常見的排名函數的例子。具體的用法可能會因為 programming 語言和環境的不同而有所不同。