ROOT 中的组合

Combinations in ROOT

组合函数在 ROOT/C++ 中有什么作用? 我只找到了这个文档 https://root.cern.ch/doc/master/namespaceROOT_1_1VecOps.html#a6d1d00c2ccb769cc48c6813dbeb132db 但我仍然不确定它到底做了什么。 有人可以提供一个示例来说明如何计算文档示例中的答案吗?

以下是 Combinations 所做的示例:

假设你有一个向量 v{1., 2., 3., 4.,} 1、2、3 和 4 是向量 v 的元素 0、1、2、3 是这些元素的索引。 如果我们写

Combinations (v, 2) 

我们得到

{{ 0, 0, 0, 1, 1, 2} , { 1, 2, 3, 2, 3, 3}}. 

这来自于查看矢量元素的不同组合。 它们是:

1、2 1, 3 1, 4 2, 3 2, 4 3, 4

其中有对应的索引

0 1 0 2 0 3 1 2 1 3 2 3

然后,左侧列构成答案中的第一个向量,右侧列构成答案中显示的第二个向量。