Applications of a strategy for designing divide-and-conquer algorithms
Science of Computer Programming
Introduction to algorithms
Mining association rules between sets of items in large databases
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Data mining using two-dimensional optimized association rules: scheme, algorithms, and visualization
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Algorithms for the maximum subarray problem based on matrix multiplication
Proceedings of the ninth annual ACM-SIAM symposium on Discrete algorithms
Programming pearls: perspective on performance
Communications of the ACM
Programming pearls: algorithm design techniques
Communications of the ACM
A Linear Time Algorithm for Finding All Maximal Scoring Subsequences
Proceedings of the Seventh International Conference on Intelligent Systems for Molecular Biology
Efficient Algorithms for k Maximum Sums
Algorithmica
Improved algorithms for the K-maximum subarray problem for small K
COCOON'05 Proceedings of the 11th annual international conference on Computing and Combinatorics
Improved algorithms for the k maximum-sums problems
ISAAC'05 Proceedings of the 16th international conference on Algorithms and Computation
Hi-index | 5.23 |
Given a sequence of n real numbers and an integer parameter k, the problem studied in this paper is to compute k subsequences of consecutive elements with the sums of their elements being the largest, the second largest, ..., and the kth largest among all possible range sums of the input sequence. For any value of k, 1@?k@?n(n+1)/2, we design a fast algorithm that takes O(n+klogn) time in the worst case to compute and rank all such subsequences. We also prove that our algorithm is optimal for k=O(n) by providing a matching lower bound. Moreover, our algorithm is an improvement over the previous results on the maximum sum subsequences problem (where only the subsequences are requested and no ordering with respect to their relative sums will be determined). Furthermore, given the fact that we have computed the @?th largest sums, our algorithm retrieves the (@?+1)th largest sum in O(logn) time, after O(n) time of preprocessing.