本网站由以下捐款支持:OEIS基金会.

排名和取消排名功能

来自OeisWiki
跳转到:航行,搜索

此文章页面是树桩,请帮助展开它。



以下定义来自Kreher&Stinson[1]:

排序算法确定组合对象在所有对象中的位置(或等级)(相对于给定顺序);unranking算法查找具有指定秩的对象。因此,排名和取消排名可视为反向操作。

下面是对这些概念的更正式的数学描述。假设是一个有限集,并且。排名函数将是双射

.

秩函数定义总订购量关于…的要素根据明显的规则

.

相反,有一个唯一的秩函数与定义在.

如果等级是在上定义的排名函数,则有一个与该函数关联的唯一取消分级函数等级.此功能取消分级也是一个双射,

.

取消分级是函数的反函数等级也就是说,我们有

,

为所有人以及所有.

有关较短的形式定义,请参见[2]

本地排名与全球排名

上述定义假定集合中只有有限多个组合对象(或结构)例如,当我们考虑对象在相同大小的对象的有限子集中的位置时,这是正确的。这就是本页作者(AK)所说的当地排名然而,如果我们对组合对象在所述组合结构(包括所有大小)的整个无限集合中的位置感兴趣,那么我们必须(例如),将较小对象计数的部分总和添加到本地排名,以获得本页作者所称的全球排名。正式而言,我们有:

哪里给出组合结构的大小给出了大小相似的组合结构的数量.

类似地全局取消分级功能可以通过以下公式计算本地取消分级功能作为:

哪里已借助辅助功能进行计算作为

因此,用于将产生一个单调(即非递减)整数序列,其中每个非负整数发生连续次数:

.

注意,上述定义包含参数显式地在其参数列表中,与取消分级正如Kreher&Stinson给出的,其中隐含地假设结果取决于它。

现在我们看到,全局排名函数是整个可枚举集的双射非负整数的组合结构 :

相反,全局非秩函数是其逆函数(即。),从非负整数到所讨论的组合结构的双射:

.

有时,任何一对这样的函数,其中另一个函数是可枚举集之间的双射非负整数及其逆整数被称为所讨论组合结构的(全局)排序和非排序函数,即使它们不遵守基于明显标准的任何顺序,例如。词典排序或其任何变体甚至对中的元素进行大小排序。请参见示例替代加泰罗尼亚订单.

特定组合结构的排序和取消排序函数

一般来说,对于任何可枚举的组合结构,只要至少有一个参数(通常是结构的“大小”,例如许多顶点、边、元素等)从零(或一)开始无限增长,就可以使用上述方案来构造排序和非排序函数,但它只能得到任何特定有限值的有限倍。然而,在某些情况下,可以使用快捷方式。

加泰罗尼亚对象的排名和取消排名功能

当对加泰罗尼亚对象进行排序和取消排序(即生成)时,幸运的是许多加泰罗尼亚数的组合解释允许以非负整数进行简单明确的编码,因此集合在上述定义中,实际上是和函数,如对于这些解释可以表示为整数序列.许多加泰罗尼亚语解释使用的最明显的整数编码全平衡二进制序列,由以下二进制字符串组成

{{10}, {1010, 1100}, {101010, 101100, 110010, 110100, 111000}, {10101010, 10101100, 10110010, 10110100, 10111000, 11001010, 11001100, 11010010, 11010100, 11011000, 11100010, 11100100, 11101000, 11110000}, ...}

其中在第个子序列有A000108号()二进制序列,每个长度.

在这种情况下,(本地)取消分级功能由数组给出A213704型,并被视为一个并元函数A213704bi(size,lrank),它给出了这样的平衡二进制字符串位,转换为十进制。

辅助功能在本例中是返回最小整数的函数这样的话,其中是指n个第个加泰罗尼亚数字,A000108号(n) ,即最小整数对于其中A014137号(k).

这给了我们序列A072643号,其中每个发生次数:

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

现在,设置意味着全局取消分级功能可以通过函数获得冈兰克(i)=A213704bi(A072643号(i) ,(i)-A014137号(A072643号(i) -1))。此函数已作为序列提交A014486号进入OEIS。

对于完全平衡的二进制序列的排序,使用局部排序函数A080301号和全球排名功能A080300型(或A215406型).


不同编程语言中的加泰罗尼亚排名和取消排名功能的实现可以在单独的加泰罗尼亚排名和取消排名函数的源代码-第页。

笔记

  1. D.L.Kreher和D.R.Stinson,组合算法,生成,枚举和搜索(CAGES),CRC出版社(1999),第2章,“生成基本组合对象”,第31-32页
  2. L.Moura,生成基本组合对象,第4页

作者

本页的第一个版本由编写安蒂·卡图恩2012年8月8日至9日。

将此页面引用为

A.Karttunen等人,<A href=“http://oeis.org/wiki/Ranking_and_unranking_functions网站“>Ranking_and_unranking_functions,OEIS Wiki。