arXivDaily arXiv每日学术速递 周一至周五更新
arXiv cs/0103023cs.DScs.DC
收藏

一个双堆选择算法--需要分析

A Dualheap Selection Algorithm - A Call for Analysis

Greg Sepesi

摘要:

提出了一种算法,有效地解决了选择问题:找到一个集合的第k个最小的成员。与分治策略相关,该算法还将集合划分为小值子集和大值子集。递归地应用,这种划分会产生一个有序集。因此,该算法的适用性比选择问题更广泛。该算法基于R.W. Floyd的1964年算法,自底向上构造堆。从经验来看,所提出的算法的性能似乎与流行的快速选择算法(C.A.R.的变体)具有竞争力1962年霍尔的快速排序算法。此外,自底向上构造堆是一个固有的并行过程(处理器可以独立地同时进行子堆构造),这表明并行实现具有性能优势。鉴于所提出的算法的广泛适用性,简单,串行性能,并行性质,进一步的研究是必要的。具体而言,最坏情况分析是一个重要但尚未解决的问题。

英文摘要:

An algorithm is presented that efficiently solves the selection problem: finding the k-th smallest member of a set. Relevant to a divide-and-conquer strategy, the algorithm also partitions a set into small and large valued subsets. Applied recursively, this partitioning results in a sorted set. The algorithm's applicability is therefore much broader than just the selection problem. The presented algorithm is based upon R.W. Floyd's 1964 algorithm that constructs a heap from the bottom-up. Empirically, the presented algorithm's performance appears competitive with the popular quickselect algorithm, a variant of C.A.R. Hoare's 1962 quicksort algorithm. Furthermore, constructing a heap from the bottom-up is an inherently parallel process (processors can work independently and simultaneously on subheap construction), suggesting a performance advantage with parallel implementations. Given the presented algorithm's broad applicability, simplicity, serial performance, and parallel nature, further study is warranted. Specifically, worst-case analysis is an important but still unsolved problem.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑