Maximum k-chains in planar point sets: combinatorial structure and algorithms

S. Felsner, L. Wernisch
{"title":"Maximum k-chains in planar point sets: combinatorial structure and algorithms","authors":"S. Felsner, L. Wernisch","doi":"10.1145/167088.167136","DOIUrl":null,"url":null,"abstract":"A chain of a set P of n points in the plane is a chain of the dominance order on P . A k-chain is a subset C of P that can be covered by k chains. A k-chain C is a maximum k-chain if no other k-chain contains more elements than C. This paper deals with the problem of finding a maximum k-chain of P in the cardinality and in the weighted case. Using the skeleton S(P ) of a point set P introduced by Viennot we describe a fairly simple algorithm that computes maximum k-chains in time O(kn logn) and linear space. The basic idea is that the canonical chain partition of a maximum (k − 1)-chain in the skeleton S(P ) provides k regions in the plane such that a maximum k-chain for P can be obtained as the union of a maximal chain from each of these regions. By the symmetry between chains and antichains in the dominance order we may use the algorithm for maximum k-chains to compute maximum k-antichains for planar points in time O(kn logn). However, for large k one can do better. We describe an algorithm computing maximum k-antichains (and, by symmetry, k-chains) in time O((n2/k) logn) and linear space. Consequently, a maximum k-chain can be computed in time O(n3/2 logn) for arbitrary k. The background for the algorithms is a geometric approach to the Greene–Kleitman theory for permutations. We include a skeleton-based exposition of this theory and give some hints on connections with the theory of Young tableaux. The concept of the skeleton of a planar point set is extended to the case of a weighted point set. This extension allows to compute maximum weighted k-chains with an algorithm that is similar to the algorithm for the cardinality case. The time and space requirements of the algorithm for weighted k-chains are O(2kn log(2kn)) and O(2kn), respectively.","PeriodicalId":280602,"journal":{"name":"Proceedings of the twenty-fifth annual ACM symposium on Theory of Computing","volume":"99 1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1993-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"28","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the twenty-fifth annual ACM symposium on Theory of Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/167088.167136","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 28

Abstract

A chain of a set P of n points in the plane is a chain of the dominance order on P . A k-chain is a subset C of P that can be covered by k chains. A k-chain C is a maximum k-chain if no other k-chain contains more elements than C. This paper deals with the problem of finding a maximum k-chain of P in the cardinality and in the weighted case. Using the skeleton S(P ) of a point set P introduced by Viennot we describe a fairly simple algorithm that computes maximum k-chains in time O(kn logn) and linear space. The basic idea is that the canonical chain partition of a maximum (k − 1)-chain in the skeleton S(P ) provides k regions in the plane such that a maximum k-chain for P can be obtained as the union of a maximal chain from each of these regions. By the symmetry between chains and antichains in the dominance order we may use the algorithm for maximum k-chains to compute maximum k-antichains for planar points in time O(kn logn). However, for large k one can do better. We describe an algorithm computing maximum k-antichains (and, by symmetry, k-chains) in time O((n2/k) logn) and linear space. Consequently, a maximum k-chain can be computed in time O(n3/2 logn) for arbitrary k. The background for the algorithms is a geometric approach to the Greene–Kleitman theory for permutations. We include a skeleton-based exposition of this theory and give some hints on connections with the theory of Young tableaux. The concept of the skeleton of a planar point set is extended to the case of a weighted point set. This extension allows to compute maximum weighted k-chains with an algorithm that is similar to the algorithm for the cardinality case. The time and space requirements of the algorithm for weighted k-chains are O(2kn log(2kn)) and O(2kn), respectively.
平面点集的最大k链:组合结构和算法
平面上有n个点的集合P的链是P上的优势阶链。k链是P的子集C,它可以被k条链覆盖。如果没有其他k链包含比C更多的元素,则k链C是最大k链。本文讨论了在基数和加权情况下求P的最大k链的问题。利用维恩诺引入的点集P的骨架S(P),我们描述了一个相当简单的算法,该算法在时间O(kn logn)和线性空间中计算最大k链。其基本思想是,骨架S(P)中最大(k−1)链的正则链划分在平面上提供k个区域,使得P的最大k链可以作为这些区域中最大链的并集而得到。利用链和反链在优势阶上的对称性,我们可以用最大k-链算法来计算时间为O(kn logn)的平面点的最大k-反链。然而,对于较大的k,可以做得更好。我们描述了在时间O((n2/k) logn)和线性空间中计算最大k-反链(以及,通过对称,k-链)的算法。因此,对于任意k,可以在O(n3/2 logn)时间内计算出最大k链。算法的背景是格林-克莱特曼置换理论的几何方法。我们对这一理论进行了以骨架为基础的阐述,并给出了一些与杨氏场景理论联系的提示。将平面点集骨架的概念推广到加权点集的情况。这个扩展允许使用类似于基数情况下的算法的算法来计算最大加权k链。该算法对加权k链的时间和空间要求分别为O(2kn log(2kn))和O(2kn)。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信